Web Analytics Made Easy - Statcounter
Skip to content

Class SBCMetaValueBase#

ClassList > SBCMetaValueBase

This class is the base class of value holders. More...

  • #include <SBCMetaValueBase.hpp>

Inherited by the following classes: SBCMetaValueType, SBCMetaValueType

Public Functions#

Type Name
virtual SBCMetaValueBase * call (const SBCMetaValue & object, const std::string & functionName, const SBCMetaValue & t0, const SBCMetaValue & t1, const SBCMetaValue & t2, const SBCMetaValue & t3, const SBCMetaValue & t4, const SBCMetaValue & t5, const SBCMetaValue & t6, const SBCMetaValue & t7, const SBCMetaValue & t8, const SBCMetaValue & t9, const SBCMetaValue & t10, const SBCMetaValue & t11, const SBCMetaValue & t12, const SBCMetaValue & t13, const SBCMetaValue & t14, const SBCMetaValue & t15) const
Calls the function functionName of the value with argumentst0 ,t1 , ...,t15 .
virtual void clear (const SBCMetaValue & object, const std::string & attributeName) const
Clears attribute attributeName from the value when possible.
virtual SBCMetaValueBase * clone () const
Clones the value.
virtual SBCMetaValueBase * constCall (const SBCMetaValue & object, const std::string & functionName, const SBCMetaValue & t0, const SBCMetaValue & t1, const SBCMetaValue & t2, const SBCMetaValue & t3, const SBCMetaValue & t4, const SBCMetaValue & t5, const SBCMetaValue & t6, const SBCMetaValue & t7, const SBCMetaValue & t8, const SBCMetaValue & t9, const SBCMetaValue & t10, const SBCMetaValue & t11, const SBCMetaValue & t12, const SBCMetaValue & t13, const SBCMetaValue & t14, const SBCMetaValue & t15) const
Calls the const function functionName of the value with argumentst0 ,t1 , ...,t15 .
virtual SBCMetaValueBase * get (const SBCMetaValue & object, const std::string & attributeName) const
Returns the value of attribute attributeName for this value.
virtual SBCMetaValueBase * getBaseType () const
Returns the base type.
virtual std::string getBaseTypeName () const
Returns the base type name.
virtual SBCMetaValueBase * getClassType () const
Returns the class type.
virtual std::string getClassTypeName () const
Returns the class type name.
virtual unsigned int getNumberOfParameters () const
Returns the number of parameters of a function type.
virtual SBCMetaValueBase * getOutputType () const
Returns the output type.
virtual std::string getOutputTypeName () const
Returns the output type name.
virtual SBCMetaValueBase * getParameterType (unsigned int i) const
Returns the type of parameter i .
virtual std::string getParameterTypeName (unsigned int i) const
Returns the type name of parameter i .
virtual SBCMetaValueBase * getParentType () const
Returns the parent type.
virtual std::string getParentTypeName () const
Returns the parent type name.
virtual SBCClassProxy * getProxy () const
Returns the proxy of the value.
virtual SBCMetaValueBase * getRootType () const
Returns the root type.
virtual std::string getRootTypeName () const
Returns the root type name.
virtual std::string getShortBaseTypeName () const
Returns the short base type name.
virtual std::string getShortClassTypeName () const
Returns the short class type name.
virtual std::string getShortOutputTypeName () const
Returns the short output type name.
virtual std::string getShortParameterTypeName (unsigned int i) const
Returns the short type name of parameter i .
virtual std::string getShortParentTypeName () const
Returns the short parent type name.
virtual std::string getShortRootTypeName () const
Returns the short root type name.
virtual std::string getShortTypeName () const
Returns the short type name.
virtual unsigned int getSize (const SBCMetaValue & object, const std::string & attributeName) const
Returns the size of attribute attributeName in the value when relevant.
virtual std::string getTypeName () const
Returns the type name.
virtual SBCContainerUUID getTypeUUID () const
Returns the type UUID .
virtual bool has (const SBCMetaValue & object, const std::string & attributeName) const
Returns whether attribute attributeName exists in the value and has a value.
virtual bool hasBaseType () const
Returns true if the value is of a type that has a base type.
virtual bool isArrayType () const
Returns true if the value is of an array type.
virtual bool isClassType () const
Returns true if the value is of a class type.
virtual bool isConstType () const
Returns true if the value is of a const type.
virtual bool isEnumType () const
Returns true if the value is of an enum type.
virtual bool isFunctionType () const
Returns true if the value is of a function type.
virtual bool isFundamentalType () const
Returns true if the value is of a fundamental type.
virtual bool isPointerToFunctionType () const
Returns true if the value is of a pointer to function type.
virtual bool isPointerToMemberFunctionType () const
Returns true if the value is of a pointer to member function type.
virtual bool isPointerToMemberType () const
Returns true if the value is of a pointer to member type.
virtual bool isPointerType () const
Returns true if the value is of a pointer type.
virtual bool isReferenceType () const
Returns true if the value is of a reference type.
virtual bool isRegisteredType () const
Returns true if the value is of a registered type.
virtual bool isVolatileType () const
Returns true if the value is of a volatile type.
virtual void set (const SBCMetaValue & object, const std::string & attributeName, const SBCMetaValue & value, const SBCMetaValue & size) const
Sets the value of attribute attributeName for this value tovalue .
virtual ~SBCMetaValueBase ()
Destructs the value.

Protected Functions#

Type Name
SBCMetaValueBase ()
Constructs a value.

Detailed Description#

This class is the base class of value holders, and a key component of the introspection mechanism.

In particular, it is the direct base class of the template class SBCMetaValueType, used to contain type information, which is itself the direct base class of the template class SBCMetaValueHolder, used to hold values.

Assume a SAMSON Extension called SEElement defines a class A, and another Extension called SEOtherElement wants to use it. If the Extension called SEOtherElement does not have access to the declaration of class A (typically provided in a header file included in SEElement), it cannot use the symbol A in its source code. For example, if the source code of SEOtherElement contained the line:

A* a = new A();
the compiler would complain that the symbol A is not defined.

In order to provide access to exposed classes, SAMSON uses a mechanism to hold values (for example, pointers to objects) in a uniform way. In the example above, the constructor exposed in the Extension SEElement returns a value holder that stores a pointer to the new instance of class A:

return new SBValueHolder<A*>(new A());
and the Extension SEOtherElement sees it as an SBValue that stores this value holder as a pointer to a SBValueBase (the base class of SBValueHolder<A*>):
SBValue classInstance = classProxy->createInstance();

This class is able to provide information about a held type or a held value.

Short name: SBValueBase

See also: SBCMetaType, SBCMetaValueType, SBCMetaValueHolder

See also: Introspection

Public Functions Documentation#

function call#

Calls the function functionName of the value with argumentst0 ,t1 , ...,t15 .

virtual SBCMetaValueBase * SBCMetaValueBase::call (
    const SBCMetaValue & object,
    const std::string & functionName,
    const SBCMetaValue & t0,
    const SBCMetaValue & t1,
    const SBCMetaValue & t2,
    const SBCMetaValue & t3,
    const SBCMetaValue & t4,
    const SBCMetaValue & t5,
    const SBCMetaValue & t6,
    const SBCMetaValue & t7,
    const SBCMetaValue & t8,
    const SBCMetaValue & t9,
    const SBCMetaValue & t10,
    const SBCMetaValue & t11,
    const SBCMetaValue & t12,
    const SBCMetaValue & t13,
    const SBCMetaValue & t14,
    const SBCMetaValue & t15
) const

Calls a function on the given object.

This function invokes the member function identified by functionName on object, passing up to sixteen arguments (t0-t15). If fewer arguments are needed, the remaining arguments are ignored.

Parameters:

  • object The SBCMetaValue representing the object on which the function is called.
  • functionName Name of the function to invoke.
  • t0 Argument 0 to pass to the function.
  • t1 Argument 1 to pass to the function.
  • t2 Argument 2 to pass to the function.
  • t3 Argument 3 to pass to the function.
  • t4 Argument 4 to pass to the function.
  • t5 Argument 5 to pass to the function.
  • t6 Argument 6 to pass to the function.
  • t7 Argument 7 to pass to the function.
  • t8 Argument 8 to pass to the function.
  • t9 Argument 9 to pass to the function.
  • t10 Argument 10 to pass to the function.
  • t11 Argument 11 to pass to the function.
  • t12 Argument 12 to pass to the function.
  • t13 Argument 13 to pass to the function.
  • t14 Argument 14 to pass to the function.
  • t15 Argument 15 to pass to the function.

Returns:

Pointer to a SBCMetaValueBase representing the result of the call, or nullptr if the call fails.


function clear#

Clears attribute attributeName from the value when possible.

virtual void SBCMetaValueBase::clear (
    const SBCMetaValue & object,
    const std::string & attributeName
) const

Clears the specified attribute from the given object, if possible.

This function removes the attribute identified by attributeName from object when the operation is supported.

Parameters:

  • object The object from which to clear the attribute.
  • attributeName Name of the attribute to clear.

function clone#

Clones the value.

virtual SBCMetaValueBase * SBCMetaValueBase::clone () const

Creates a clone of this value.

The returned object is a new heap-allocated instance that is a copy of the current object. Ownership of the returned pointer is transferred to the caller.

Returns:

Pointer to a new SBCMetaValueBase that is a clone of this object.


function constCall#

Calls the const function functionName of the value with argumentst0 ,t1 , ...,t15 .

virtual SBCMetaValueBase * SBCMetaValueBase::constCall (
    const SBCMetaValue & object,
    const std::string & functionName,
    const SBCMetaValue & t0,
    const SBCMetaValue & t1,
    const SBCMetaValue & t2,
    const SBCMetaValue & t3,
    const SBCMetaValue & t4,
    const SBCMetaValue & t5,
    const SBCMetaValue & t6,
    const SBCMetaValue & t7,
    const SBCMetaValue & t8,
    const SBCMetaValue & t9,
    const SBCMetaValue & t10,
    const SBCMetaValue & t11,
    const SBCMetaValue & t12,
    const SBCMetaValue & t13,
    const SBCMetaValue & t14,
    const SBCMetaValue & t15
) const

Calls a const member function on the given object.

This function invokes the const member function identified by functionName on object, passing up to sixteen arguments (t0-t15). The called function does not modify the object.

Parameters:

  • object The SBCMetaValue representing the object on which the const function is called.
  • functionName Name of the const function to invoke.
  • t0 Argument 0 to pass to the function.
  • t1 Argument 1 to pass to the function.
  • t2 Argument 2 to pass to the function.
  • t3 Argument 3 to pass to the function.
  • t4 Argument 4 to pass to the function.
  • t5 Argument 5 to pass to the function.
  • t6 Argument 6 to pass to the function.
  • t7 Argument 7 to pass to the function.
  • t8 Argument 8 to pass to the function.
  • t9 Argument 9 to pass to the function.
  • t10 Argument 10 to pass to the function.
  • t11 Argument 11 to pass to the function.
  • t12 Argument 12 to pass to the function.
  • t13 Argument 13 to pass to the function.
  • t14 Argument 14 to pass to the function.
  • t15 Argument 15 to pass to the function.

Returns:

Pointer to a SBCMetaValueBase representing the result of the const call, or nullptr if the call fails.


function get#

Returns the value of attribute attributeName for this value.

virtual SBCMetaValueBase * SBCMetaValueBase::get (
    const SBCMetaValue & object,
    const std::string & attributeName
) const

Retrieves the value of an attribute from the given object.

This function obtains the value of the attribute identified by attributeName from object.

Parameters:

  • object The object from which to retrieve the attribute.
  • attributeName Name of the attribute to retrieve.

Returns:

Pointer to a SBCMetaValueBase containing the attribute's value, or nullptr if the attribute does not exist or cannot be retrieved.


function getBaseType#

Returns the base type.

virtual SBCMetaValueBase * SBCMetaValueBase::getBaseType () const

Returns the base type, i.e.

an instance of the template class SBCMetaValueType which contains type information about the base type of this type. For example, the base type of SBMStructuralModelNodeAtom is SBMStructuralModelNode.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getBaseTypeName().

Returns:

Pointer to the base type, or nullptr if not applicable.

See also: SBCMetaValueBase::getBaseTypeName()


function getBaseTypeName#

Returns the base type name.

virtual std::string SBCMetaValueBase::getBaseTypeName () const

This function returns the type name of the base type of T.

For example, the base type name of SBMStructuralModelNodeAtom is "SBMStructuralModelNode".

Note that this function returns a string. If a type is needed, use SBCMetaValueBase::getBaseType().

Returns:

the base type name as a string.

See also: SBCMetaValueBase::getBaseType()


function getClassType#

Returns the class type.

virtual SBCMetaValueBase * SBCMetaValueBase::getClassType () const

Returns the class type, i.e.

an instance of the template class SBCMetaValueType which contains type information about the class type of this type, when the type is a pointer to a member or a pointer to a member function. For example, the class type name of & SBMStructuralModelNodeAtom::clearName is SBMStructuralModelNodeAtom.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getClassTypeName().

Returns:

Pointer to the class type, or nullptr if not applicable.

See also: SBCMetaValueBase::getClassTypeName()


function getClassTypeName#

Returns the class type name.

virtual std::string SBCMetaValueBase::getClassTypeName () const

This function returns the type name of the class associated to T, when T is a pointer to a member or a pointer to a member function ("void" otherwise).

For example, the class type name of & SBMStructuralModelNodeAtom::clearName is "SBMStructuralModelNodeAtom".

Note that this function returns a string. If a SBCMetaValueBase::getClassType() is needed, use SBCMetaValueBase::getClassType().

Returns:

the class type name as a string.

See also: SBCMetaValueBase::getClassType()


function getNumberOfParameters#

Returns the number of parameters of a function type.

virtual unsigned int SBCMetaValueBase::getNumberOfParameters () const

Returns:

the number of parameters.


function getOutputType#

Returns the output type.

virtual SBCMetaValueBase * SBCMetaValueBase::getOutputType () const

Returns the output type, i.e.

an instance of the template class SBCMetaValueType which contains type information about the output type of this type, when the type is a function. For example, the output type name of SBMStructuralModelNodeAtom* getFirstAtom() is SBMStructuralModelNodeAtom.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getOutputTypeName().

Returns:

Pointer to the output type, or nullptr if not applicable.

See also: SBCMetaValueBase::getOutputTypeName()


function getOutputTypeName#

Returns the output type name.

virtual std::string SBCMetaValueBase::getOutputTypeName () const

This function returns the type name of the output type of T, when T is a function.

For example, the output type name of SBMStructuralModelNodeAtom* getFirstAtom() is "SBMStructuralModelNodeAtom*".

Note that this function returns a string. If a SBCMetaValueBase::getOutputType() is needed, use SBCMetaValueBase::getOutputType().

Returns:

the output type name as a string.

See also: SBCMetaValueBase::getOutputType()


function getParameterType#

Returns the type of parameter i .

virtual SBCMetaValueBase * SBCMetaValueBase::getParameterType (
    unsigned int i
) const

This function returns the type of parameter i, , i.e.

an instance of the template class SBCMetaValueType which contains type information about the type of parameter i, when the type is a function. For example, the type name of parameter 2 of myFunction(int, double, const SBMStructuralModelNodeAtom*) is const SBMStructuralModelNodeAtom*.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getParameterTypeName().

Parameters:

  • i Index of the parameter whose type is requested.

Returns:

Pointer to the parameter type, or nullptr if not applicable.

See also: SBCMetaValueBase::getParameterTypeName()


function getParameterTypeName#

Returns the type name of parameter i .

virtual std::string SBCMetaValueBase::getParameterTypeName (
    unsigned int i
) const

This function returns the type name of parameter i of type T, when T is a function ("void" otherwise).

For example, the type name of parameter 2 of myFunction(int, double, const SBMStructuralModelNodeAtom*) is "const SBMStructuralModelNodeAtom*".

Note that this function returns a string. If a type is needed, use SBCMetaValueBase::getParameterType().

Parameters:

  • i Index of the parameter.

Returns:

the type name of the specified parameter as a string.

See also: SBCMetaValueBase::getParameterType()


function getParentType#

Returns the parent type.

virtual SBCMetaValueBase * SBCMetaValueBase::getParentType () const

Returns the parent type, i.e.

an instance of the template class SBCMetaValueType which contains type information about the parent type of this type. For example, the parent type of int* is int.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getParentTypeName().

Returns:

Pointer to the parent type, or nullptr if not applicable.

See also: SBCMetaValueBase::getParentTypeName()


function getParentTypeName#

Returns the parent type name.

virtual std::string SBCMetaValueBase::getParentTypeName () const

This function returns the type name of the parent type of T.

For example, the parent type name of int* is "int".

Note that this function returns a string. If a type is needed, use SBCMetaValueBase::getParentType().

Returns:

the parent type name as a string.

See also: SBCMetaValueBase::getParentType()

See also: SBCMetaValueBase::getRootTypeName()


function getProxy#

Returns the proxy of the value.

virtual SBCClassProxy * SBCMetaValueBase::getProxy () const

Retrieves the proxy associated with this value.

The proxy provides access to class-specific operations. If no proxy is associated, nullptr is returned.

Returns:

Pointer to the SBCClassProxy for this value, or nullptr if none.


function getRootType#

Returns the root type.

virtual SBCMetaValueBase * SBCMetaValueBase::getRootType () const

Returns the root type, i.e.

an instance of the template class SBCMetaValueType which contains type information about the root type of this type. For example, the root type of const std::string& is std::string.

Note that this function returns a type. If a string is needed, use SBCMetaValueBase::getRootTypeName().

Returns:

Pointer to the root type, or nullptr if not applicable.

See also: SBCMetaValueBase::getRootTypeName()


function getRootTypeName#

Returns the root type name.

virtual std::string SBCMetaValueBase::getRootTypeName () const

This function returns the type name of the root type of T.

For example, the root type name of const std::string& is "std::string".

Note that this function returns a string. If a type is needed, use SBCMetaValueBase::getRootType().

Returns:

the root type name as a string.

See also: SBCMetaValueBase::getRootType()

See also: SBCMetaValueBase::getParentTypeName()


function getShortBaseTypeName#

Returns the short base type name.

virtual std::string SBCMetaValueBase::getShortBaseTypeName () const

This function returns the short type name of the base type of T.

For example, the short base type name of SBMStructuralModelNodeAtom is "SBNode".

Note that this function returns a string. If a SBCMetaValueBase::getBaseType() is needed, use SBCMetaValueBase::getBaseType().

Returns:

the short base type name as a string.

See also: SBCMetaValueBase::getBaseType()


function getShortClassTypeName#

Returns the short class type name.

virtual std::string SBCMetaValueBase::getShortClassTypeName () const

This function returns the short type name of the class associated to T, when T is a pointer to a member or a pointer to a member function ("void" otherwise).

For example, the short class type name of & SBMStructuralModelNodeAtom::clearName is "SBAtom*".

Note that this function returns a string. If a SBCMetaValueBase::getClassType() is needed, use SBCMetaValueBase::getClassType().

Returns:

the short class type name as a string.

See also: SBCMetaValueBase::getClassType()


function getShortOutputTypeName#

Returns the short output type name.

virtual std::string SBCMetaValueBase::getShortOutputTypeName () const

This function returns the short type name of the output type of T, when T is a function.

For example, the short output type name of SBMStructuralModelNodeAtom* getFirstAtom() is "SBAtom".

Note that this function returns a string. If a SBCMetaValueBase::getOutputType() is needed, use SBCMetaValueBase::getOutputType().

Returns:

the short output type name as a string.

See also: SBCMetaValueBase::getOutputType()


function getShortParameterTypeName#

Returns the short type name of parameter i .

virtual std::string SBCMetaValueBase::getShortParameterTypeName (
    unsigned int i
) const

Returns the short type name of parameter i of type T, when T is a function ("void" otherwise).

For example, the short type name of parameter 2 of myFunction(int, double, const SBMStructuralModelNodeAtom*) is "const SBAtom*".

Note that this function returns a string. If a type is needed, use SBCMetaValueBase::getParameterType().

Parameters:

  • i Index of the parameter whose short type name is requested.

Returns:

The short type name as a std::string.

See also: SBCMetaValueBase::getParameterType()


function getShortParentTypeName#

Returns the short parent type name.

virtual std::string SBCMetaValueBase::getShortParentTypeName () const

This function returns the short type name of the parent type of T.

For example, the short parent type name of SBMStructuralModelNodeAtom* is "SBAtom".

Note that this function returns a string. If a SBCMetaValueBase::getParentType() is needed, use SBCMetaValueBase::getParentType().

Returns:

the short parent type name as a string.

See also: SBCMetaValueBase::getParentType()

See also: SBCMetaValueBase::getShortRootTypeName()


function getShortRootTypeName#

Returns the short root type name.

virtual std::string SBCMetaValueBase::getShortRootTypeName () const

This function returns the short type name of the root type of T.

For example, the short root type name of const SBMStructuralModelNodeAtom & is "SBAtom".

Note that this function returns a string. If a SBCMetaValueBase::getRootType() is needed, use SBCMetaValueBase::getRootType().

Returns:

the short root type name as a string.

See also: SBCMetaValueBase::getRootType()

See also: SBCMetaValueBase::getShortParentTypeName()


function getShortTypeName#

Returns the short type name.

virtual std::string SBCMetaValueBase::getShortTypeName () const

When the type T is fundamental, this function returns a string containing the fundamental type (e.g.

"unsigned int"). When T is registered (via SB_REGISTER_TYPE), this function returns its short type name. Else, this function recursively decomposes the type in order to provide a string describing it, but using short names (e.g. "const SBAtom*").

Returns:

the short type name as a string.


function getSize#

Returns the size of attribute attributeName in the value when relevant.

virtual unsigned int SBCMetaValueBase::getSize (
    const SBCMetaValue & object,
    const std::string & attributeName
) const

Retrieves the size of a specified attribute in the given object.

This function returns the size (e.g., number of elements) of the attribute identified by attributeName in object, when such a size is relevant.

Parameters:

  • object The object containing the attribute.
  • attributeName Name of the attribute whose size is queried.

Returns:

The size of the attribute, or 0 if the size is not applicable.


function getTypeName#

Returns the type name.

virtual std::string SBCMetaValueBase::getTypeName () const

When the type T is fundamental, this function returns a string containing the fundamental type (e.g.

"unsigned int"). When T is registered (via SB_REGISTER_TYPE), this function returns its type name. Else, this function recursively decomposes the type in order to provide a string describing it (e.g. "const SBMStructuralModelNodeAtom*").

Returns:

the type name as a string.


function getTypeUUID#

Returns the type UUID .

virtual SBCContainerUUID SBCMetaValueBase::getTypeUUID () const

Retrieves the UUID of the type if it is registered.

If the type is registered (via SB_REGISTER_TYPE), this function returns the associated UUID. Else, the function returns an invalid UUID.

Returns:

The type's SBCContainerUUID, or an invalid UUID if the type is not registered.


function has#

Returns whether attribute attributeName exists in the value and has a value.

virtual bool SBCMetaValueBase::has (
    const SBCMetaValue & object,
    const std::string & attributeName
) const

Checks whether the given object has a specified attribute.

This function determines if attributeName exists in object and has a value.

Parameters:

  • object The object to query.
  • attributeName Name of the attribute to check.

Returns:

true if the attribute exists and has a value; otherwise false.


function hasBaseType#

Returns true if the value is of a type that has a base type.

virtual bool SBCMetaValueBase::hasBaseType () const

Returns true if the value is of a type that has a base type.

Returns:

true if the value has a base type, false otherwise.


function isArrayType#

Returns true if the value is of an array type.

virtual bool SBCMetaValueBase::isArrayType () const

Returns true if the value is of an array type.

Returns:

true if the value is of an array type, false otherwise.


function isClassType#

Returns true if the value is of a class type.

virtual bool SBCMetaValueBase::isClassType () const

Returns true if the value is of a class type.

Returns:

true if the value is of a class type, false otherwise.


function isConstType#

Returns true if the value is of a const type.

virtual bool SBCMetaValueBase::isConstType () const

Returns true if the value is of a const type.

Returns:

true if the value is of a const type, false otherwise.


function isEnumType#

Returns true if the value is of an enum type.

virtual bool SBCMetaValueBase::isEnumType () const

Returns true if the value is of an enum type.

Returns:

true if the value is of an enum type, false otherwise.


function isFunctionType#

Returns true if the value is of a function type.

virtual bool SBCMetaValueBase::isFunctionType () const

Returns true if the value is of a function type.

Returns:

true if the value is of a function type, false otherwise.


function isFundamentalType#

Returns true if the value is of a fundamental type.

virtual bool SBCMetaValueBase::isFundamentalType () const

Returns true if the value is of a fundamental type (void, bool, char, signed char, unsigned char, wchar_t, short, unsigned short, int, unsigned int, long, unsigned long, float, double or long double).

Returns:

true if the value is of a fundamental type, false otherwise.


function isPointerToFunctionType#

Returns true if the value is of a pointer to function type.

virtual bool SBCMetaValueBase::isPointerToFunctionType () const

Returns true if the value is of a pointer to function type.

Returns:

true if the value is of a pointer to function type, false otherwise.


function isPointerToMemberFunctionType#

Returns true if the value is of a pointer to member function type.

virtual bool SBCMetaValueBase::isPointerToMemberFunctionType () const

Returns true if the value is of a pointer to member function type.

Returns:

true if the value is of a pointer to member function type, false otherwise.


function isPointerToMemberType#

Returns true if the value is of a pointer to member type.

virtual bool SBCMetaValueBase::isPointerToMemberType () const

Returns true if the value is of a pointer to member type.

Returns:

true if the value is of a pointer to member type, false otherwise.


function isPointerType#

Returns true if the value is of a pointer type.

virtual bool SBCMetaValueBase::isPointerType () const

Returns true if the value is of a pointer type.

Returns:

true if the value is of a pointer type, false otherwise.


function isReferenceType#

Returns true if the value is of a reference type.

virtual bool SBCMetaValueBase::isReferenceType () const

Returns true if the value is of a reference type.

Returns:

true if the value is of a reference type, false otherwise.


function isRegisteredType#

Returns true if the value is of a registered type.

virtual bool SBCMetaValueBase::isRegisteredType () const

Returns true if the value is of a registered type.

Returns:

true if the value is of a registered type, false otherwise.


function isVolatileType#

Returns true if the value is of a volatile type.

virtual bool SBCMetaValueBase::isVolatileType () const

Returns true if the value is of a volatile type.

Returns:

true if the value is of a volatile type, false otherwise.


function set#

Sets the value of attribute attributeName for this value tovalue .

virtual void SBCMetaValueBase::set (
    const SBCMetaValue & object,
    const std::string & attributeName,
    const SBCMetaValue & value,
    const SBCMetaValue & size
) const

Sets the value of an attribute on the given object.

This function assigns value to the attribute identified by attributeName on object. The optional size parameter may be used to specify the size for array-like attributes.

Parameters:

  • object The object on which to set the attribute.
  • attributeName Name of the attribute to set.
  • value The new value to assign to the attribute.
  • size Optional size information for the attribute (e.g., for arrays). May be ignored if not applicable.

function ~SBCMetaValueBase#

Destructs the value.

virtual SBCMetaValueBase::~SBCMetaValueBase () 

Destructor.

Destructs the value.


Protected Functions Documentation#

function SBCMetaValueBase#

Constructs a value.

SBCMetaValueBase::SBCMetaValueBase ()