From David Callu:
"
the main problem is the wrapper generation:
The PropertyInfo class use MethodInfo class to access to the value.
When the property are define with the I_Property* macro,
the MethodInfo use by the property to have access to the value
are instancied in the I_Property* macro, but there
are already instantied by the I_Method* macro before
secondary problem:
- the function used by the property could no be customized
in the genwrapper.conf file
- an array property can't insert a value
- the std::map reflector (and indexedProperty in general) haven't remove method
- about the help in wrapper ... why not ...
solution :
To use the function define by the I_Method, I add a MethodInfo variable in the I_Method0 macro
old macro :
#define I_Method0(ret, fn) (\
params.clear(),\
addMethod(new osgIntrospection::TypedMethodIn
fo0<reflected_type, ret >(qualifyName(#fn), &reflected_type::fn, params)))
new macro :
#define I_Method0(ret, fn, signature, briefHelp, detailedHelp) \
params.clear(); \
osgIntrospection::MethodInfo* signature = addMethod(new osgIntrospection::TypedMethodInfo0<reflected_type, ret >(qualifyName(#fn), &reflected_type::fn, params, briefHelp, detailedHelp)); sink(signature)
the osgIntrospection::MethodInfo* signature is used by the I_Property macro to define the MethodInfo that it use
so for I_Property macro :
old macro :
#define I_PropertyWithReturnType(t, n, r) \
cap=addProperty(new osgIntrospection::PropertyInfo(osgIntrospection::Reflection::getType(typeid(reflected_type)), osgIntrospection::Reflection::getType(typeid(t)), #n, \
I_Method0(t, get##n), \
I_Method1(r, set##n, IN, t, value)))
new macro:
#define I_SimpleProperty(t, n, get, set) \
get, \
set))
The genwrapper has been modified in this way.
The method signature is define by the prototype of the method
For example, the "const char* libraryName();" have "__C5_char_P1__libraryName" for signature
solution for secondary problem:
The genwrapper accept new tokens in the configuration to custumize the property.
The new PropertyInserter and the CustomPropertyInsertAttribute class has been defined
The PropertyRemover has been added to the StdMapReflector
The _briefHelp and _detailedHelp variable has been added in PropertyInfo, MethodInfo and ContructorInfo class
modification:
I have modify the genwrapper files
Configuration.cpp Configuration.h add some tokens to custumize the property
Doxyfile.template add the comment in the output xml
genwrapper.conf customize some property in osg::Geometry
RegistryBuilder.h RegistryBuilder.cpp add the process_help function (to extract help from xml)
TypeRegister.cpp TypeRegister.h optimize the property detection
TypeDesc.h TypeDesc.cpp modify FunctionDesc and PropertyDesc
WrapperGenerator.h WrapperGenerator.cpp modify the output
I also modify the fallowing osgIntrospection files:
include/osgIntrospection/Attributes add the PropertyInserter and the CustomPropertyInsertAttribute class
include/osgIntrospection/ConstructorInfo add the _briefHelp and _detailedHelp variable in the ConstructorInfo class
add access function for the two new variables (_briefHelp and _detailedHelp)
modify the constructor to define the two new variables (_briefHelp and _detailedHelp)
include/osgIntrospection/MethodInfo add the _briefHelp and _detailedHelp variable in the MethodInfo class
add access function for the two new variables (_briefHelp and _detailedHelp)
modify the constructor to define the two new variables (_briefHelp and _detailedHelp)
include/osgIntrospection/PropertyInfo add the _briefHelp and _detailedHelp variable in the PropertyInfo class
add access function for the two new variables (_briefHelp and _detailedHelp)
modify the constructor to define the two new variables (_briefHelp and _detailedHelp)
include/osgIntrospection/ReflectionMacro remove unused I_Property* macro
modify all I_Method macro to accept the help string
modify all I_Method macro to define a MethodInfo signature
include/osgIntrospection/Reflector add the PropertyInserter in StdVectorReflector and StdListReflector
add the PropertyRemover in the StdMapReflector
include/osgIntrospection/StaticMethodInfo modify all StaticMethodInfo* to accept the help in parameter
include/osgIntrospection/TypedMethodInfo modify all TypedMethodInfo* to accept the help in parameter
include/osgIntrospection/TypedConstructorInfo modify all TypedConstructorInfo* to accept the help in parameter
include/osgIntrospection/Type add the _briefHelp and _detailedHelp variable in the Type class
"
This commit is contained in:
@@ -163,7 +163,35 @@ namespace osgIntrospection
|
||||
private:
|
||||
const PropertyAdder* _adder;
|
||||
};
|
||||
|
||||
|
||||
/// Base struct for custom array property inserters. Descendants should
|
||||
/// override the insert() method whose purpose is to insert a new item to
|
||||
/// an array property.
|
||||
struct PropertyInserter
|
||||
{
|
||||
virtual void insert(Value&, int, const Value&) const { throw PropertyAccessException("[n/a inside a custom accessor]", PropertyAccessException::INSERT); }
|
||||
virtual void insert(Value&, const ValueList&, const Value&) const { throw PropertyAccessException("[n/a inside a custom accessor]", PropertyAccessException::INSERT); }
|
||||
virtual ~PropertyInserter() {}
|
||||
};
|
||||
|
||||
/// By setting an attribute of this class you can specify a custom object
|
||||
/// that will be used to insert a new item to an array property.
|
||||
class CustomPropertyInsertAttribute: public CustomAttribute
|
||||
{
|
||||
public:
|
||||
CustomPropertyInsertAttribute(const PropertyInserter* inserter)
|
||||
: CustomAttribute(), _inserter(inserter) {}
|
||||
|
||||
const PropertyInserter* getInserter() const { return _inserter; }
|
||||
|
||||
~CustomPropertyInsertAttribute()
|
||||
{
|
||||
delete _inserter;
|
||||
}
|
||||
|
||||
private:
|
||||
const PropertyInserter* _inserter;
|
||||
};
|
||||
|
||||
/// Base struct for custom array property removers. Descendants should
|
||||
/// override the remove() method whose purpose is to remove an item from
|
||||
@@ -171,6 +199,7 @@ namespace osgIntrospection
|
||||
struct PropertyRemover
|
||||
{
|
||||
virtual void remove(Value&, int) const { throw PropertyAccessException("[n/a inside a custom accessor]", PropertyAccessException::REMOVE); }
|
||||
virtual void remove(Value&, ValueList&) const { throw PropertyAccessException("[n/a inside a custom accessor]", PropertyAccessException::REMOVE); }
|
||||
virtual ~PropertyRemover() {}
|
||||
};
|
||||
|
||||
@@ -287,7 +316,6 @@ namespace osgIntrospection
|
||||
int _wi;
|
||||
const Type& _type;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -26,9 +26,11 @@ namespace osgIntrospection
|
||||
class OSGINTROSPECTION_EXPORT ConstructorInfo: public CustomAttributeProvider
|
||||
{
|
||||
public:
|
||||
ConstructorInfo(const Type& decltype, const ParameterInfoList& params)
|
||||
: _decltype(decltype),
|
||||
_params(params)
|
||||
ConstructorInfo(const Type& decltype, const ParameterInfoList& params, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: _decltype(decltype),
|
||||
_params(params),
|
||||
_briefHelp(briefHelp),
|
||||
_detailedHelp(detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -37,17 +39,35 @@ namespace osgIntrospection
|
||||
for (ParameterInfoList::iterator i=_params.begin(); i!=_params.end(); ++i)
|
||||
delete *i;
|
||||
}
|
||||
|
||||
|
||||
/// Returns the brief help of the reflected construtor.
|
||||
inline virtual const std::string& getBriefHelp() const
|
||||
{
|
||||
return _briefHelp;
|
||||
}
|
||||
|
||||
/// Returns the detailed help of the reflected contructor.
|
||||
inline virtual const std::string& getDetailedHelp() const
|
||||
{
|
||||
return _detailedHelp;
|
||||
}
|
||||
|
||||
/// Returns the Type object associated to the type that
|
||||
/// declares the reflected constructor.
|
||||
inline const Type& getDeclaringType() const
|
||||
{
|
||||
return _decltype;
|
||||
}
|
||||
|
||||
|
||||
/// Returns a list of objects that describe the reflected
|
||||
/// constructor's parameters.
|
||||
inline const ParameterInfoList& getParameters() const
|
||||
{
|
||||
return _params;
|
||||
}
|
||||
|
||||
|
||||
/// Invokes the reflected constructor dynamically passing it the
|
||||
/// arguments as a list of Value objects.
|
||||
virtual Value createInstance(ValueList& args) const = 0;
|
||||
|
||||
protected:
|
||||
@@ -56,6 +76,9 @@ namespace osgIntrospection
|
||||
private:
|
||||
const Type& _decltype;
|
||||
ParameterInfoList _params;
|
||||
|
||||
std::string _briefHelp;
|
||||
std::string _detailedHelp;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -178,6 +178,7 @@ namespace osgIntrospection
|
||||
AGET,
|
||||
ASET,
|
||||
ADD,
|
||||
INSERT,
|
||||
REMOVE,
|
||||
COUNT
|
||||
};
|
||||
@@ -200,6 +201,7 @@ namespace osgIntrospection
|
||||
case AGET: msg = "retrieved with array index"; break;
|
||||
case ASET: msg = "set with array index"; break;
|
||||
case ADD: msg = "added"; break;
|
||||
case INSERT: msg = "inserted"; break;
|
||||
case REMOVE: msg = "removed"; break;
|
||||
case COUNT: msg = "counted"; break;
|
||||
default: msg = "?";
|
||||
|
||||
@@ -38,8 +38,8 @@ namespace osgIntrospection
|
||||
{
|
||||
public:
|
||||
/// Direct initialization constructor.
|
||||
inline MethodInfo(const std::string& qname, const Type& decltype, const Type& rtype, const ParameterInfoList& plist);
|
||||
|
||||
inline MethodInfo(const std::string& qname, const Type& decltype, const Type& rtype, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string());
|
||||
|
||||
/// Destructor
|
||||
inline ~MethodInfo();
|
||||
|
||||
@@ -57,6 +57,12 @@ namespace osgIntrospection
|
||||
/// method's parameters.
|
||||
inline const ParameterInfoList& getParameters() const;
|
||||
|
||||
/// Returns the brief help of the reflected method.
|
||||
inline virtual const std::string& getBriefHelp() const;
|
||||
|
||||
/// Returns the detailed help of the reflected method.
|
||||
inline virtual const std::string& getDetailedHelp() const;
|
||||
|
||||
/// Returns whether the reflected method is const or not.
|
||||
virtual bool isConst() const = 0;
|
||||
|
||||
@@ -97,17 +103,22 @@ namespace osgIntrospection
|
||||
|
||||
std::string _name;
|
||||
const Type& _decltype;
|
||||
const Type& _rtype;
|
||||
const Type& _rtype;
|
||||
ParameterInfoList _params;
|
||||
|
||||
std::string _briefHelp;
|
||||
std::string _detailedHelp;
|
||||
};
|
||||
|
||||
// INLINE METHODS
|
||||
|
||||
inline MethodInfo::MethodInfo(const std::string& qname, const Type& decltype, const Type& rtype, const ParameterInfoList& plist)
|
||||
|
||||
inline MethodInfo::MethodInfo(const std::string& qname, const Type& decltype, const Type& rtype, const ParameterInfoList& plist, std::string briefHelp, std::string detailedHelp)
|
||||
: CustomAttributeProvider(),
|
||||
_decltype(decltype),
|
||||
_rtype(rtype),
|
||||
_params(plist)
|
||||
_params(plist),
|
||||
_briefHelp(briefHelp),
|
||||
_detailedHelp(detailedHelp)
|
||||
{
|
||||
_name = strip_namespace(qname);
|
||||
}
|
||||
@@ -140,6 +151,16 @@ namespace osgIntrospection
|
||||
return _params;
|
||||
}
|
||||
|
||||
inline const std::string& MethodInfo::getBriefHelp() const
|
||||
{
|
||||
return _briefHelp;
|
||||
}
|
||||
|
||||
inline const std::string& MethodInfo::getDetailedHelp() const
|
||||
{
|
||||
return _detailedHelp;
|
||||
}
|
||||
|
||||
inline Value MethodInfo::invoke(const Value& , ValueList& ) const
|
||||
{
|
||||
throw InvokeNotImplementedException();
|
||||
|
||||
@@ -48,8 +48,53 @@ namespace osgIntrospection
|
||||
class OSGINTROSPECTION_EXPORT PropertyInfo: public CustomAttributeProvider
|
||||
{
|
||||
public:
|
||||
/// Direct initialization constructor for simple and indexed
|
||||
/// properties.
|
||||
/// Direct initialization constructor for simple properties.
|
||||
/// You must pass the Type object associated to the class that
|
||||
/// declares the property, the Type object that describes the
|
||||
/// type of the property's value, the property name and the
|
||||
/// getter/setter methods. Either the setter or the getter can
|
||||
/// be null, meaning a restricted access. If both are null, the
|
||||
/// user is expected to add a custom accessor attribute to this
|
||||
/// PropertyInfo object.
|
||||
PropertyInfo(const Type& decltype, const Type& ptype, const std::string& name, const MethodInfo* getm, const MethodInfo* setm, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: CustomAttributeProvider(),
|
||||
_decltype(decltype),
|
||||
_ptype(ptype),
|
||||
_name(name),
|
||||
_getm(getm),
|
||||
_setm(setm),
|
||||
_numm(0),
|
||||
_addm(0),
|
||||
_insm(0),
|
||||
_remm(0),
|
||||
_is_array(false),
|
||||
_briefHelp(briefHelp),
|
||||
_detailedHelp(detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
/// Direct initialization constructor for "array" properties.
|
||||
/// You must pass the Type object associated to the type that
|
||||
/// declares the property, the Type object that describes the
|
||||
/// type of the property's value, the property name and the
|
||||
/// getter/setter/counter/adder/insert/remover methods.
|
||||
PropertyInfo(const Type& decltype, const Type& ptype, const std::string& name, const MethodInfo* getm, const MethodInfo* setm, const MethodInfo* numm, const MethodInfo* addm, const MethodInfo* insm, const MethodInfo* remm, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: CustomAttributeProvider(),
|
||||
_decltype(decltype),
|
||||
_ptype(ptype),
|
||||
_name(name),
|
||||
_getm(getm),
|
||||
_setm(setm),
|
||||
_numm(numm),
|
||||
_addm(addm),
|
||||
_insm(insm),
|
||||
_remm(remm),
|
||||
_is_array(true),
|
||||
_briefHelp(briefHelp),
|
||||
_detailedHelp(detailedHelp)
|
||||
{
|
||||
}
|
||||
/// Direct initialization constructor for indexed properties.
|
||||
/// You must pass the Type object associated to the class that
|
||||
/// declares the property, the Type object that describes the
|
||||
/// type of the property's value, the property name and the
|
||||
@@ -60,7 +105,7 @@ namespace osgIntrospection
|
||||
/// If the getter method has parameters, the property is considered
|
||||
/// to be indexed. The same is true if the getter is null and the
|
||||
/// setter has more than one parameter.
|
||||
PropertyInfo(const Type& decltype, const Type& ptype, const std::string& name, const MethodInfo* getm, const MethodInfo* setm)
|
||||
PropertyInfo(const Type& decltype, const Type& ptype, const std::string& name, const MethodInfo* getm, const MethodInfo* setm, const MethodInfo* remm, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: CustomAttributeProvider(),
|
||||
_decltype(decltype),
|
||||
_ptype(ptype),
|
||||
@@ -69,8 +114,11 @@ namespace osgIntrospection
|
||||
_setm(setm),
|
||||
_numm(0),
|
||||
_addm(0),
|
||||
_remm(0),
|
||||
_is_array(false)
|
||||
_insm(0),
|
||||
_remm(remm),
|
||||
_is_array(false),
|
||||
_briefHelp(briefHelp),
|
||||
_detailedHelp(detailedHelp)
|
||||
{
|
||||
if (_getm)
|
||||
{
|
||||
@@ -87,25 +135,6 @@ namespace osgIntrospection
|
||||
}
|
||||
}
|
||||
|
||||
/// Direct initialization constructor for "array" properties.
|
||||
/// You must pass the Type object associated to the type that
|
||||
/// declares the property, the Type object that describes the
|
||||
/// type of the property's value, the property name and the
|
||||
/// getter/setter/counter/adder/remover methods.
|
||||
PropertyInfo(const Type& decltype, const Type& ptype, const std::string& name, const MethodInfo* getm, const MethodInfo* setm, const MethodInfo* numm, const MethodInfo* addm, const MethodInfo* remm)
|
||||
: CustomAttributeProvider(),
|
||||
_decltype(decltype),
|
||||
_ptype(ptype),
|
||||
_name(name),
|
||||
_getm(getm),
|
||||
_setm(setm),
|
||||
_numm(numm),
|
||||
_addm(addm),
|
||||
_remm(remm),
|
||||
_is_array(true)
|
||||
{
|
||||
}
|
||||
|
||||
/// Returns the number of indices
|
||||
inline int getNumIndices() const
|
||||
{
|
||||
@@ -118,6 +147,17 @@ namespace osgIntrospection
|
||||
return _name;
|
||||
}
|
||||
|
||||
/// Returns the brief help of the property being described.
|
||||
inline virtual const std::string& getBriefHelp() const
|
||||
{
|
||||
return _briefHelp;
|
||||
}
|
||||
/// Returns the detailed help of the property being described.
|
||||
inline virtual const std::string& getDetailedHelp() const
|
||||
{
|
||||
return _detailedHelp;
|
||||
}
|
||||
|
||||
/// Returns the type that declares the property.
|
||||
inline virtual const Type& getDeclaringType() const
|
||||
{
|
||||
@@ -155,7 +195,13 @@ namespace osgIntrospection
|
||||
{
|
||||
return _addm;
|
||||
}
|
||||
|
||||
|
||||
/// Returns the insert method.
|
||||
inline const MethodInfo* getInsertMethod() const
|
||||
{
|
||||
return _insm;
|
||||
}
|
||||
|
||||
/// Returns the remover method.
|
||||
inline const MethodInfo* getRemoveMethod() const
|
||||
{
|
||||
@@ -185,13 +231,19 @@ namespace osgIntrospection
|
||||
{
|
||||
return _addm != 0 || isDefined<CustomPropertyAddAttribute>(false);
|
||||
}
|
||||
|
||||
|
||||
/// Returns whether items can be insert to the array property.
|
||||
inline bool canInsert() const
|
||||
{
|
||||
return _insm != 0 || isDefined<CustomPropertyInsertAttribute>(false);
|
||||
}
|
||||
|
||||
/// Returns whether items can be removed from the array property.
|
||||
inline bool canRemove() const
|
||||
{
|
||||
return _remm != 0 || isDefined<CustomPropertyRemoveAttribute>(false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// Returns whether the property is simple.
|
||||
inline bool isSimple() const
|
||||
@@ -254,6 +306,11 @@ namespace osgIntrospection
|
||||
/// setter attribute is defined, it will be invoked instead.
|
||||
void setIndexedValue(Value& instance, ValueList& indices, const Value& value) const;
|
||||
|
||||
/// Invokes the remover method on the given instance and removes
|
||||
/// an item from the indexed property. If a custom remover attribute
|
||||
/// is defined, it will be invoked instead.
|
||||
void removeIndexedItem(Value& instance, ValueList& indices) const;
|
||||
|
||||
/// Invokes the counter method on the given instance and returns
|
||||
/// the number of items of the array property. If a custom counter
|
||||
/// attribute is defined, it will be invoked instead.
|
||||
@@ -278,7 +335,13 @@ namespace osgIntrospection
|
||||
/// an item to the array property. If a custom adder attribute is
|
||||
/// defined, it will be invoked instead.
|
||||
void addArrayItem(Value& instance, const Value& value) const;
|
||||
|
||||
|
||||
/// Invokes the insert method on the given instance and inserts
|
||||
/// an item to the array property after the i-th item of the array
|
||||
/// property. If a custom adder attribute is defined,
|
||||
/// it will be invoked instead.
|
||||
void insertArrayItem(Value& instance, int i, const Value& value) const;
|
||||
|
||||
/// Invokes the remover method on the given instance and removes
|
||||
/// an item from the array property. If a custom remover attribute
|
||||
/// is defined, it will be invoked instead.
|
||||
@@ -302,9 +365,13 @@ namespace osgIntrospection
|
||||
const MethodInfo* _setm;
|
||||
const MethodInfo* _numm;
|
||||
const MethodInfo* _addm;
|
||||
const MethodInfo* _insm;
|
||||
const MethodInfo* _remm;
|
||||
ParameterInfoList _indices;
|
||||
bool _is_array;
|
||||
|
||||
std::string _briefHelp;
|
||||
std::string _detailedHelp;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -208,7 +208,7 @@ namespace osgIntrospection
|
||||
struct AtomicValueReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
AtomicValueReflector(const std::string& name, const std::string& ns)
|
||||
: ValueReflector<T>(name, ns)
|
||||
{
|
||||
@@ -222,7 +222,7 @@ namespace osgIntrospection
|
||||
{
|
||||
setReaderWriter(new StdReaderWriter<T>);
|
||||
setComparator(new PartialOrderComparator<T>);
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -230,7 +230,7 @@ namespace osgIntrospection
|
||||
struct WAtomicValueReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
WAtomicValueReflector(const std::string& name, const std::string& ns)
|
||||
: ValueReflector<T>(name, ns)
|
||||
{
|
||||
@@ -244,7 +244,7 @@ namespace osgIntrospection
|
||||
{
|
||||
setReaderWriter(new StdWReaderWriter<T>);
|
||||
setComparator(new PartialOrderComparator<T>);
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -330,17 +330,29 @@ namespace osgIntrospection
|
||||
}
|
||||
};
|
||||
|
||||
struct Inserter: PropertyInserter
|
||||
{
|
||||
virtual void insert(Value& instance, int i, const Value& v) const
|
||||
{
|
||||
T& ctr = getInstance<T>(instance);
|
||||
typename T::iterator j=ctr.begin();
|
||||
std::advance(j, i);
|
||||
ctr.insert(j, variant_cast<const typename T::value_type& >(v));
|
||||
}
|
||||
};
|
||||
|
||||
StdVectorReflector(const std::string& name): ValueReflector<T>(name)
|
||||
{
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Items", 0, 0, 0, 0, 0);
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Item", 0, 0, 0, 0, 0, 0);
|
||||
pi->addAttribute(new CustomPropertyGetAttribute(new Getter));
|
||||
pi->addAttribute(new CustomPropertySetAttribute(new Setter));
|
||||
pi->addAttribute(new CustomPropertyCountAttribute(new Counter));
|
||||
pi->addAttribute(new CustomPropertyAddAttribute(new Adder));
|
||||
pi->addAttribute(new CustomPropertyRemoveAttribute(new Remover));
|
||||
|
||||
pi->addAttribute(new CustomPropertyInsertAttribute(new Inserter));
|
||||
|
||||
if (typeid(VT).before(typeid(typename T::value_type)) ||
|
||||
typeid(typename T::value_type).before(typeid(VT)))
|
||||
{
|
||||
@@ -357,7 +369,7 @@ namespace osgIntrospection
|
||||
struct StdSetReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
struct Getter: PropertyGetter
|
||||
{
|
||||
virtual Value get(Value& instance, int i) const
|
||||
@@ -392,7 +404,7 @@ namespace osgIntrospection
|
||||
getInstance<T>(instance).insert(variant_cast<const typename T::value_type& >(v));
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
struct Remover: PropertyRemover
|
||||
{
|
||||
virtual void remove(Value& instance, int i) const
|
||||
@@ -407,13 +419,13 @@ namespace osgIntrospection
|
||||
StdSetReflector(const std::string& name): ValueReflector<T>(name)
|
||||
{
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Items", 0, 0, 0, 0, 0);
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Item", 0, 0, 0, 0, 0, 0);
|
||||
pi->addAttribute(new CustomPropertyGetAttribute(new Getter));
|
||||
pi->addAttribute(new CustomPropertyCountAttribute(new Counter));
|
||||
pi->addAttribute(new CustomPropertyAddAttribute(new Adder));
|
||||
pi->addAttribute(new CustomPropertyRemoveAttribute(new Remover));
|
||||
|
||||
|
||||
if (typeid(VT).before(typeid(typename T::value_type)) ||
|
||||
typeid(typename T::value_type).before(typeid(VT)))
|
||||
{
|
||||
@@ -430,7 +442,7 @@ namespace osgIntrospection
|
||||
struct StdListReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
struct Getter: PropertyGetter
|
||||
{
|
||||
virtual Value get(Value& instance, int i) const
|
||||
@@ -488,17 +500,29 @@ namespace osgIntrospection
|
||||
}
|
||||
};
|
||||
|
||||
struct Inserter: PropertyInserter
|
||||
{
|
||||
virtual void insert(Value& instance, int i, const Value& v) const
|
||||
{
|
||||
T& ctr = getInstance<T>(instance);
|
||||
typename T::iterator j=ctr.begin();
|
||||
std::advance(j, i);
|
||||
ctr.insert(j, variant_cast<const typename T::value_type& >(v));
|
||||
}
|
||||
};
|
||||
|
||||
StdListReflector(const std::string& name): ValueReflector<T>(name)
|
||||
{
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Items", 0, 0, 0, 0, 0);
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::value_type), "Item", 0, 0, 0, 0, 0, 0);
|
||||
pi->addAttribute(new CustomPropertyGetAttribute(new Getter));
|
||||
pi->addAttribute(new CustomPropertySetAttribute(new Setter));
|
||||
pi->addAttribute(new CustomPropertyCountAttribute(new Counter));
|
||||
pi->addAttribute(new CustomPropertyAddAttribute(new Adder));
|
||||
pi->addAttribute(new CustomPropertyRemoveAttribute(new Remover));
|
||||
|
||||
pi->addAttribute(new CustomPropertyInsertAttribute(new Inserter));
|
||||
|
||||
if (typeid(VT).before(typeid(typename T::value_type)) ||
|
||||
typeid(typename T::value_type).before(typeid(VT)))
|
||||
{
|
||||
@@ -515,7 +539,7 @@ namespace osgIntrospection
|
||||
struct StdMapReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
typedef typename T::iterator iterator;
|
||||
typedef typename T::const_iterator const_iterator;
|
||||
typedef typename T::key_type key_type;
|
||||
@@ -527,17 +551,17 @@ namespace osgIntrospection
|
||||
{
|
||||
T& ctr = getInstance<T>(instance);
|
||||
const key_type& key = variant_cast<const key_type& >(indices.front());
|
||||
|
||||
|
||||
iterator i = ctr.find(key);
|
||||
if (i == ctr.end()) return Value();
|
||||
return i->second;
|
||||
}
|
||||
|
||||
|
||||
virtual Value get(const Value& instance, const ValueList& indices) const
|
||||
{
|
||||
const T& ctr = getInstance<T>(instance);
|
||||
const key_type& key = variant_cast<const key_type& >(indices.front());
|
||||
|
||||
|
||||
const_iterator i = ctr.find(key);
|
||||
if (i == ctr.end()) return Value();
|
||||
return i->second;
|
||||
@@ -586,14 +610,23 @@ namespace osgIntrospection
|
||||
}
|
||||
};
|
||||
|
||||
struct Remover: PropertyRemover
|
||||
{
|
||||
virtual void remove(Value& instance, ValueList& values) const
|
||||
{
|
||||
getInstance<T>(instance).erase(getInstance<key_type>(values.front()));
|
||||
}
|
||||
};
|
||||
|
||||
StdMapReflector(const std::string& name): ValueReflector<T>(name)
|
||||
{
|
||||
addConstructor(new TypedConstructorInfo0<T, instance_creator_type>(ParameterInfoList()));
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::mapped_type), "Items", 0, 0);
|
||||
|
||||
PropertyInfo* pi = new PropertyInfo(typeof(T), typeof(typename T::mapped_type), "Item", 0, 0, 0);
|
||||
pi->addAttribute(new CustomPropertyGetAttribute(new Getter));
|
||||
pi->addAttribute(new CustomPropertySetAttribute(new Setter));
|
||||
pi->addAttribute(new CustomIndexAttribute(new Indexer));
|
||||
pi->addAttribute(new CustomPropertyRemoveAttribute(new Remover));
|
||||
|
||||
if (typeid(VT).before(typeid(typename T::mapped_type)) ||
|
||||
typeid(typename T::mapped_type).before(typeid(VT)))
|
||||
@@ -609,11 +642,11 @@ namespace osgIntrospection
|
||||
struct StdPairReflector: ValueReflector<T>
|
||||
{
|
||||
typedef typename ValueReflector<T>::instance_creator_type instance_creator_type;
|
||||
|
||||
|
||||
struct Accessor: PropertyGetter, PropertySetter
|
||||
{
|
||||
Accessor(int i): _i(i) {}
|
||||
|
||||
|
||||
virtual Value get(const Value& instance) const
|
||||
{
|
||||
switch (_i)
|
||||
|
||||
@@ -37,8 +37,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)();
|
||||
|
||||
StaticMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -63,8 +63,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0);
|
||||
|
||||
StaticMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -91,8 +91,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1);
|
||||
|
||||
StaticMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -120,8 +120,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2);
|
||||
|
||||
StaticMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -150,8 +150,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3);
|
||||
|
||||
StaticMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -181,8 +181,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4);
|
||||
|
||||
StaticMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -213,8 +213,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5);
|
||||
|
||||
StaticMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -246,8 +246,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6);
|
||||
|
||||
StaticMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -280,8 +280,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7);
|
||||
|
||||
StaticMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -315,8 +315,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8);
|
||||
|
||||
StaticMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -351,8 +351,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9);
|
||||
|
||||
StaticMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -388,8 +388,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10);
|
||||
|
||||
StaticMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -426,8 +426,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11);
|
||||
|
||||
StaticMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -465,8 +465,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12);
|
||||
|
||||
StaticMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -505,8 +505,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13);
|
||||
|
||||
StaticMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -546,8 +546,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14);
|
||||
|
||||
StaticMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -588,8 +588,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef R (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15);
|
||||
|
||||
StaticMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), f_(f)
|
||||
StaticMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -631,8 +631,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)();
|
||||
|
||||
StaticMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -657,8 +657,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0);
|
||||
|
||||
StaticMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -685,8 +685,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1);
|
||||
|
||||
StaticMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -714,8 +714,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2);
|
||||
|
||||
StaticMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -744,8 +744,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3);
|
||||
|
||||
StaticMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -775,8 +775,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4);
|
||||
|
||||
StaticMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -807,8 +807,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5);
|
||||
|
||||
StaticMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -840,8 +840,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6);
|
||||
|
||||
StaticMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -874,8 +874,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7);
|
||||
|
||||
StaticMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -909,8 +909,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8);
|
||||
|
||||
StaticMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -945,8 +945,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9);
|
||||
|
||||
StaticMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -982,8 +982,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10);
|
||||
|
||||
StaticMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1020,8 +1020,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11);
|
||||
|
||||
StaticMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1059,8 +1059,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12);
|
||||
|
||||
StaticMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1099,8 +1099,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13);
|
||||
|
||||
StaticMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1140,8 +1140,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14);
|
||||
|
||||
StaticMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1182,8 +1182,8 @@ namespace osgIntrospection
|
||||
public:
|
||||
typedef void (*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15);
|
||||
|
||||
StaticMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), f_(f)
|
||||
StaticMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -90,6 +90,12 @@ namespace osgIntrospection
|
||||
/// name aliases match the given argument
|
||||
inline bool matchesName(const std::string& name) const;
|
||||
|
||||
/// Returns the brief help of the reflected type.
|
||||
inline virtual const std::string& getBriefHelp() const;
|
||||
|
||||
/// Returns the detailed help of the reflected type.
|
||||
inline virtual const std::string& getDetailedHelp() const;
|
||||
|
||||
/// Returns the number of base types.
|
||||
/// This number is zero if the type is not derived from any other
|
||||
/// type.
|
||||
@@ -261,6 +267,9 @@ namespace osgIntrospection
|
||||
|
||||
typedef std::vector<std::string> AliasList;
|
||||
AliasList _aliases;
|
||||
|
||||
std::string _briefHelp;
|
||||
std::string _detailedHelp;
|
||||
};
|
||||
|
||||
// OPERATORS
|
||||
@@ -333,6 +342,16 @@ namespace osgIntrospection
|
||||
return qname;
|
||||
}
|
||||
|
||||
inline const std::string& Type::getBriefHelp() const
|
||||
{
|
||||
return _briefHelp;
|
||||
}
|
||||
|
||||
inline const std::string& Type::getDetailedHelp() const
|
||||
{
|
||||
return _detailedHelp;
|
||||
}
|
||||
|
||||
inline int Type::getNumBaseTypes() const
|
||||
{
|
||||
check_defined();
|
||||
|
||||
@@ -25,8 +25,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC>
|
||||
struct TypedConstructorInfo0: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo0(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo0(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -42,8 +42,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0>
|
||||
struct TypedConstructorInfo1: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo1(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo1(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -61,8 +61,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1>
|
||||
struct TypedConstructorInfo2: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo2(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo2(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -81,8 +81,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2>
|
||||
struct TypedConstructorInfo3: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo3(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo3(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -102,8 +102,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3>
|
||||
struct TypedConstructorInfo4: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo4(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo4(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -124,8 +124,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4>
|
||||
struct TypedConstructorInfo5: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo5(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo5(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -147,8 +147,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5>
|
||||
struct TypedConstructorInfo6: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo6(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo6(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -171,8 +171,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6>
|
||||
struct TypedConstructorInfo7: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo7(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo7(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -196,8 +196,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7>
|
||||
struct TypedConstructorInfo8: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo8(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo8(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -222,8 +222,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8>
|
||||
struct TypedConstructorInfo9: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo9(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo9(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -249,8 +249,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9>
|
||||
struct TypedConstructorInfo10: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo10(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo10(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -277,8 +277,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10>
|
||||
struct TypedConstructorInfo11: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo11(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo11(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -306,8 +306,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10, typename P11>
|
||||
struct TypedConstructorInfo12: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo12(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo12(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -336,8 +336,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10, typename P11, typename P12>
|
||||
struct TypedConstructorInfo13: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo13(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo13(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -367,8 +367,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10, typename P11, typename P12, typename P13>
|
||||
struct TypedConstructorInfo14: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo14(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo14(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -399,8 +399,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10, typename P11, typename P12, typename P13, typename P14>
|
||||
struct TypedConstructorInfo15: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo15(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo15(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -432,8 +432,8 @@ namespace osgIntrospection
|
||||
template<typename C, typename IC, typename P0, typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10, typename P11, typename P12, typename P13, typename P14, typename P15>
|
||||
struct TypedConstructorInfo16: ConstructorInfo
|
||||
{
|
||||
TypedConstructorInfo16(const ParameterInfoList& plist)
|
||||
: ConstructorInfo(typeof(C), plist)
|
||||
TypedConstructorInfo16(const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: ConstructorInfo(typeof(C), plist, briefHelp, detailedHelp)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -50,24 +50,24 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)() const;
|
||||
typedef R (C::*FunctionType)();
|
||||
|
||||
TypedMethodInfo0(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo0(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
static TypedMethodInfo0 *constMethod(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
static TypedMethodInfo0 *constMethod(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
{
|
||||
return new TypedMethodInfo0(qname, cf, plist);
|
||||
return new TypedMethodInfo0(qname, cf, plist, briefHelp, detailedHelp);
|
||||
}
|
||||
|
||||
static TypedMethodInfo0 *nonConstMethod(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
static TypedMethodInfo0 *nonConstMethod(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
{
|
||||
return new TypedMethodInfo0(qname, f, plist);
|
||||
return new TypedMethodInfo0(qname, f, plist, briefHelp, detailedHelp);
|
||||
}
|
||||
|
||||
bool isConst() const { return cf_; }
|
||||
@@ -128,13 +128,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0) const;
|
||||
typedef R (C::*FunctionType)(P0);
|
||||
|
||||
TypedMethodInfo1(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo1(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -200,13 +200,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1) const;
|
||||
typedef R (C::*FunctionType)(P0, P1);
|
||||
|
||||
TypedMethodInfo2(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo2(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -274,13 +274,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2);
|
||||
|
||||
TypedMethodInfo3(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo3(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -350,13 +350,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3);
|
||||
|
||||
TypedMethodInfo4(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo4(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -428,13 +428,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4);
|
||||
|
||||
TypedMethodInfo5(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo5(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -508,13 +508,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5);
|
||||
|
||||
TypedMethodInfo6(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo6(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -590,13 +590,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6);
|
||||
|
||||
TypedMethodInfo7(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo7(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -674,13 +674,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7);
|
||||
|
||||
TypedMethodInfo8(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo8(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -760,13 +760,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8);
|
||||
|
||||
TypedMethodInfo9(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo9(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -848,13 +848,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9);
|
||||
|
||||
TypedMethodInfo10(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo10(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -938,13 +938,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10);
|
||||
|
||||
TypedMethodInfo11(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo11(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1030,13 +1030,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11);
|
||||
|
||||
TypedMethodInfo12(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo12(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1124,13 +1124,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12);
|
||||
|
||||
TypedMethodInfo13(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo13(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1220,13 +1220,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13);
|
||||
|
||||
TypedMethodInfo14(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo14(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1318,13 +1318,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14);
|
||||
|
||||
TypedMethodInfo15(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo15(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1418,13 +1418,13 @@ namespace osgIntrospection
|
||||
typedef R (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) const;
|
||||
typedef R (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15);
|
||||
|
||||
TypedMethodInfo16(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo16(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(R), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1520,13 +1520,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)() const;
|
||||
typedef void (C::*FunctionType)();
|
||||
|
||||
TypedMethodInfo0(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo0(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo0(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1588,13 +1588,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0) const;
|
||||
typedef void (C::*FunctionType)(P0);
|
||||
|
||||
TypedMethodInfo1(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo1(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo1(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1660,13 +1660,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1) const;
|
||||
typedef void (C::*FunctionType)(P0, P1);
|
||||
|
||||
TypedMethodInfo2(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo2(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo2(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1734,13 +1734,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2);
|
||||
|
||||
TypedMethodInfo3(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo3(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo3(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1810,13 +1810,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3);
|
||||
|
||||
TypedMethodInfo4(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo4(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo4(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1888,13 +1888,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4);
|
||||
|
||||
TypedMethodInfo5(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo5(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo5(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1968,13 +1968,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5);
|
||||
|
||||
TypedMethodInfo6(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo6(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo6(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2050,13 +2050,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6);
|
||||
|
||||
TypedMethodInfo7(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo7(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo7(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2134,13 +2134,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7);
|
||||
|
||||
TypedMethodInfo8(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo8(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo8(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2220,13 +2220,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8);
|
||||
|
||||
TypedMethodInfo9(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo9(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo9(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2308,13 +2308,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9);
|
||||
|
||||
TypedMethodInfo10(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo10(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo10(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2398,13 +2398,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10);
|
||||
|
||||
TypedMethodInfo11(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo11(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo11(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2490,13 +2490,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11);
|
||||
|
||||
TypedMethodInfo12(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo12(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo12(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2584,13 +2584,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12);
|
||||
|
||||
TypedMethodInfo13(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo13(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo13(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2680,13 +2680,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13);
|
||||
|
||||
TypedMethodInfo14(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo14(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo14(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2778,13 +2778,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14);
|
||||
|
||||
TypedMethodInfo15(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo15(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo15(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2878,13 +2878,13 @@ namespace osgIntrospection
|
||||
typedef void (C::*ConstFunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) const;
|
||||
typedef void (C::*FunctionType)(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15);
|
||||
|
||||
TypedMethodInfo16(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(cf), f_(0)
|
||||
TypedMethodInfo16(const std::string& qname, ConstFunctionType cf, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(cf), f_(0)
|
||||
{
|
||||
}
|
||||
|
||||
TypedMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist)
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist), cf_(0), f_(f)
|
||||
TypedMethodInfo16(const std::string& qname, FunctionType f, const ParameterInfoList& plist, std::string briefHelp = std::string(), std::string detailedHelp = std::string())
|
||||
: MethodInfo(qname, typeof(C), typeof(void), plist, briefHelp, detailedHelp), cf_(0), f_(f)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -46,12 +46,19 @@ namespace osgIntrospection
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// Return a const reference on the reflected value given on the instance
|
||||
///
|
||||
/// NOTE: You should NEVER paste a pointer or a reference to the template parameter T
|
||||
template<typename T> const T &getInstance(const Value &instance)
|
||||
{
|
||||
return instance.isTypedPointer() ?
|
||||
*variant_cast<const T*>(instance) : variant_cast<const T&>(instance);
|
||||
}
|
||||
|
||||
/// Return a reference on the reflected value given on the instance
|
||||
///
|
||||
/// NOTE: You should NEVER paste a pointer or a reference to the template parameter T
|
||||
template<typename T> T &getInstance(Value &instance)
|
||||
{
|
||||
return instance.isTypedPointer() ?
|
||||
|
||||
@@ -140,9 +140,9 @@ void PropertyInfo::setIndexedValue(Value& instance, ValueList& args, const Value
|
||||
if (!_setm)
|
||||
throw PropertyAccessException(_decltype.getQualifiedName() + "::" + _name, PropertyAccessException::ISET);
|
||||
|
||||
args.push_back(value);
|
||||
_setm->invoke(instance, args);
|
||||
args.pop_back();
|
||||
ValueList tmpArgs(args);
|
||||
tmpArgs.push_back(value);
|
||||
_setm->invoke(instance, tmpArgs);
|
||||
}
|
||||
|
||||
int PropertyInfo::getNumArrayItems(const Value& instance) const
|
||||
@@ -237,6 +237,24 @@ void PropertyInfo::addArrayItem(Value& instance, const Value& value) const
|
||||
_addm->invoke(instance, args);
|
||||
}
|
||||
|
||||
void PropertyInfo::insertArrayItem(Value& instance, int i, const Value& value) const
|
||||
{
|
||||
const CustomPropertyInsertAttribute *cadd = getAttribute<CustomPropertyInsertAttribute>(false);
|
||||
if (cadd)
|
||||
{
|
||||
cadd->getInserter()->insert(instance, i, value);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!_addm)
|
||||
throw PropertyAccessException(_decltype.getQualifiedName() + "::" + _name, PropertyAccessException::INSERT);
|
||||
|
||||
ValueList args;
|
||||
args.push_back(i);
|
||||
args.push_back(value);
|
||||
_insm->invoke(instance, args);
|
||||
}
|
||||
|
||||
void PropertyInfo::removeArrayItem(Value& instance, int i) const
|
||||
{
|
||||
const CustomPropertyRemoveAttribute *crem = getAttribute<CustomPropertyRemoveAttribute>(false);
|
||||
@@ -291,7 +309,7 @@ void PropertyInfo::getIndexValueSet(int whichindex, const Value& instance, Value
|
||||
cia->getIndexInfo()->getIndexValueSet(whichindex, instance, values);
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
std::map<int, const IndexTypeAttribute *> ita_map;
|
||||
const CustomAttributeList& cal = getCustomAttributes();
|
||||
for (CustomAttributeList::const_iterator i=cal.begin(); i!=cal.end(); ++i)
|
||||
@@ -301,11 +319,17 @@ void PropertyInfo::getIndexValueSet(int whichindex, const Value& instance, Value
|
||||
ita_map[ita->getWhichIndex()] = ita;
|
||||
}
|
||||
|
||||
const EnumLabelMap& elm = getIndexParameters().at(whichindex)->getParameterType().getEnumLabels();
|
||||
if (elm.empty())
|
||||
throw IndexValuesNotDefinedException(_name, getIndexParameters().at(whichindex)->getName());
|
||||
const EnumLabelMap* elm = &getIndexParameters().at(whichindex)->getParameterType().getEnumLabels();
|
||||
if (elm->empty())
|
||||
{
|
||||
if (ita_map[whichindex])
|
||||
elm = &ita_map[whichindex]->getIndexType().getEnumLabels();
|
||||
|
||||
for (EnumLabelMap::const_iterator i=elm.begin(); i!=elm.end(); ++i)
|
||||
if (elm->empty())
|
||||
throw IndexValuesNotDefinedException(_name, getIndexParameters().at(whichindex)->getName());
|
||||
}
|
||||
|
||||
for (EnumLabelMap::const_iterator i=elm->begin(); i!=elm->end(); ++i)
|
||||
{
|
||||
if (ita_map[whichindex])
|
||||
values.push_back(Value(i->first).convertTo(ita_map[whichindex]->getIndexType()));
|
||||
@@ -325,3 +349,19 @@ const ParameterInfoList& PropertyInfo::getIndexParameters() const
|
||||
|
||||
return _indices;
|
||||
}
|
||||
|
||||
void PropertyInfo::removeIndexedItem(Value& instance, ValueList& args) const
|
||||
{
|
||||
const CustomPropertyRemoveAttribute *crem = getAttribute<CustomPropertyRemoveAttribute>(false);
|
||||
if (crem)
|
||||
{
|
||||
crem->getRemover()->remove(instance, args);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!_remm)
|
||||
throw PropertyAccessException(_decltype.getQualifiedName() + "::" + _name, PropertyAccessException::REMOVE);
|
||||
|
||||
_remm->invoke(instance, args);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user