Web Analytics Made Easy - Statcounter
Skip to content

File SBCMetaRegister.hpp#

FileList > Core > Meta > SBCMetaRegister.hpp

  • #include "SBCMetaIsRegisteredType.hpp"
  • #include "SBCMetaValue.hpp"
  • #include "SBCContainerUUID.hpp"
  • #include "SBCContainerList.hpp"
  • #include "SBCTimeClock.hpp"
  • #include "SBCSystemDefinitions.hpp"
  • #include <unordered_map>

Classes#

Type Name
class SBCMetaIsRegisteredType< SBCContainerList< SBCContainerUUID > > <>
class SBCMetaIsRegisteredType< SBCContainerList< std::string > > <>
class SBCMetaIsRegisteredType< SBCContainerUUID > <>
class SBCMetaIsRegisteredType< SBCMetaValue > <>
class SBCMetaIsRegisteredType< __int64 > <>
class SBCMetaIsRegisteredType< bool > <>
class SBCMetaIsRegisteredType< char > <>
class SBCMetaIsRegisteredType< double > <>
class SBCMetaIsRegisteredType< float > <>
class SBCMetaIsRegisteredType< int > <>
class SBCMetaIsRegisteredType< long > <>
class SBCMetaIsRegisteredType< long double > <>
class SBCMetaIsRegisteredType< short > <>
class SBCMetaIsRegisteredType< signed char > <>
class SBCMetaIsRegisteredType< std::pair< SBCContainerUUID, std::string > > <>
class SBCMetaIsRegisteredType< std::string > <>
class SBCMetaIsRegisteredType< std::unordered_map< std::string, SBValue > > <>
class SBCMetaIsRegisteredType< std::vector< SBCContainerUUID > > <>
class SBCMetaIsRegisteredType< std::vector< bool > > <>
class SBCMetaIsRegisteredType< std::vector< double > > <>
class SBCMetaIsRegisteredType< std::vector< float > > <>
class SBCMetaIsRegisteredType< std::vector< int > > <>
class SBCMetaIsRegisteredType< std::vector< long > > <>
class SBCMetaIsRegisteredType< std::vector< long double > > <>
class SBCMetaIsRegisteredType< std::vector< short > > <>
class SBCMetaIsRegisteredType< std::vector< std::pair< SBCContainerUUID, std::string > > > <>
class SBCMetaIsRegisteredType< std::vector< std::string > > <>
class SBCMetaIsRegisteredType< std::vector< unsigned int > > <>
class SBCMetaIsRegisteredType< std::vector< unsigned long > > <>
class SBCMetaIsRegisteredType< std::vector< unsigned short > > <>
class SBCMetaIsRegisteredType< unsigned char > <>
class SBCMetaIsRegisteredType< unsigned int > <>
class SBCMetaIsRegisteredType< unsigned long > <>
class SBCMetaIsRegisteredType< unsigned short > <>
class SBCMetaIsRegisteredType< wchar_t > <>

Macros#

Type Name
define COMMA
You can use COMMA to replace commas when registering complex types with SB_REGISTER_TYPE, e.g.
define SB_REGISTER_TYPE (TYPE, SHORT_NAME, UUID)
Registers a type (see Introspection ) in a SAMSON Extension.

Macro Definition Documentation#

define COMMA#

You can use COMMA to replace commas when registering complex types with SB_REGISTER_TYPE, e.g.

#define COMMA 

commas within angle brackets, parentheses.

Example:

SB_REGISTER_TYPE(std::unordered_map<std::string COMMA SBValue>, "std::unordered_map<std::string, SBValue>", "2E7F940C-4438-44F3-AC82-9220E9765054");


define SB_REGISTER_TYPE#

Registers a type (see Introspection ) in a SAMSON Extension.

#define SB_REGISTER_TYPE (
    TYPE,
    SHORT_NAME,
    UUID
) 

Parameters:

  • TYPE The registered type
  • SHORT_NAME The short name of the registered type (in quotes)
  • UUID The UUID of the registered type (in quotes)

This macro registers a type (see Introspection) in a SAMSON Extension.

Assume for example a SAMSON Extension contains the following class:

class A {

SB_CLASS

public:

    A() {}
    virtual ~A() {}

    int multiplyByTwo(int i) {

        return 2 * i;

    }

};

SB_REGISTER_TYPE(A, "A", "BF99103E-06FE-C4C1-D929-4C6E833B101C");

The SB_REGISTER_TYPE macro declares to SAMSON's Introspection that A is a registered type.

For classes that (directly or indirectly) derive from SBCReferenceTarget, the macro SB_REGISTER_TARGET_TYPE should be used instead.

See also: Introspection

See also: SB_REGISTER_TARGET_TYPE