Web Analytics Made Easy - Statcounter
Skip to content

File SBCClassFactory.hpp#

FileList > Class > SBCClassFactory.hpp

  • #include "SBCClassExport.hpp"
  • #include "SBCClassConstructor.hpp"
  • #include "SBCContainerHashMap.hpp"
  • #include <string>

Classes#

Type Name
class SBCClassFactory
This class describes a class factory in a class proxy.

Public Types#

Type Name
typedef SBCClassFactory SBFactory
The short name of SBCClassFactory .

Macros#

Type Name
define SB_CONSTRUCTOR_0 ()
Declares a class constructor (see Introspection ) CLASS() for the currently described class.
define SB_CONSTRUCTOR_0_BEGIN
An advanced way to declare a default constructor that takes no arguments.
define SB_CONSTRUCTOR_1 (T0)
Declares a class constructor (see Introspection ) CLASS(T0) for the currently described class.
define SB_CONSTRUCTOR_10 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9) for the currently described class.
define SB_CONSTRUCTOR_11 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10) for the currently described class.
define SB_CONSTRUCTOR_12 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11) for the currently described class.
define SB_CONSTRUCTOR_13 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12) for the currently described class.
define SB_CONSTRUCTOR_14 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13) for the currently described class.
define SB_CONSTRUCTOR_15 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14) for the currently described class.
define SB_CONSTRUCTOR_16 (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15) for the currently described class.
define SB_CONSTRUCTOR_2 (T0, T1)
Declares a class constructor (see Introspection ) CLASS(T0,T1) for the currently described class.
define SB_CONSTRUCTOR_3 (T0, T1, T2)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2) for the currently described class.
define SB_CONSTRUCTOR_4 (T0, T1, T2, T3)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3) for the currently described class.
define SB_CONSTRUCTOR_5 (T0, T1, T2, T3, T4)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4) for the currently described class.
define SB_CONSTRUCTOR_6 (T0, T1, T2, T3, T4, T5)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5) for the currently described class.
define SB_CONSTRUCTOR_7 (T0, T1, T2, T3, T4, T5, T6)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6) for the currently described class.
define SB_CONSTRUCTOR_8 (T0, T1, T2, T3, T4, T5, T6, T7)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7) for the currently described class.
define SB_CONSTRUCTOR_9 (T0, T1, T2, T3, T4, T5, T6, T7, T8)
Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8) for the currently described class.
define SB_CONSTRUCTOR_END
This macro declares the end of a constructor description started with SB_CONSTRUCTOR_0_BEGIN or SB_CONSTRUCTOR_N_BEGIN in the class interface (see Introspection ).
define SB_CONSTRUCTOR_N_BEGIN (N, ...)
A general and advanced way to declare a constructor that takes N arguments (at least 1 argument); types of arguments are provided after N.
define SB_FACTORY_BEGIN
Declares the beginning of the class factory (see Introspection )
define SB_FACTORY_END
Declares the end of the class factory (see Introspection )

Public Types Documentation#

typedef SBFactory#

The short name of SBCClassFactory .

typedef SBCClassFactory SBFactory;


Macro Definition Documentation#

define SB_CONSTRUCTOR_0#

Declares a class constructor (see Introspection ) CLASS() for the currently described class.

#define SB_CONSTRUCTOR_0 (

) 


define SB_CONSTRUCTOR_0_BEGIN#

An advanced way to declare a default constructor that takes no arguments.

#define SB_CONSTRUCTOR_0_BEGIN 

This advanced declaration is used to provide documentation for a constructor. If you don't need to provide documentation, then you can use the SB_CONSTRUCTOR_0 macro.

In the class descriptor file, you can expose the default constructor as follows:

SB_CLASS_BEGIN(SEMyClass);

    // ...

    SB_FACTORY_BEGIN;

        SB_CONSTRUCTOR_0_BEGIN
            SB_CALLABLE_MEMBER_DOC_BRIEF("A default constructor"),
        SB_CONSTRUCTOR_END

    SB_FACTORY_END;

    // ...

SB_CLASS_END(SEMyClass);

See: Introspection

See also: SB_CONSTRUCTOR_END, SB_CONSTRUCTOR_N_BEGIN


define SB_CONSTRUCTOR_1#

Declares a class constructor (see Introspection ) CLASS(T0) for the currently described class.

#define SB_CONSTRUCTOR_1 (
    T0
) 


define SB_CONSTRUCTOR_10#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9) for the currently described class.

#define SB_CONSTRUCTOR_10 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9
) 


define SB_CONSTRUCTOR_11#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10) for the currently described class.

#define SB_CONSTRUCTOR_11 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10
) 


define SB_CONSTRUCTOR_12#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11) for the currently described class.

#define SB_CONSTRUCTOR_12 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10,
    T11
) 


define SB_CONSTRUCTOR_13#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12) for the currently described class.

#define SB_CONSTRUCTOR_13 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10,
    T11,
    T12
) 


define SB_CONSTRUCTOR_14#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13) for the currently described class.

#define SB_CONSTRUCTOR_14 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10,
    T11,
    T12,
    T13
) 


define SB_CONSTRUCTOR_15#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14) for the currently described class.

#define SB_CONSTRUCTOR_15 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10,
    T11,
    T12,
    T13,
    T14
) 


define SB_CONSTRUCTOR_16#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15) for the currently described class.

#define SB_CONSTRUCTOR_16 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8,
    T9,
    T10,
    T11,
    T12,
    T13,
    T14,
    T15
) 


define SB_CONSTRUCTOR_2#

Declares a class constructor (see Introspection ) CLASS(T0,T1) for the currently described class.

#define SB_CONSTRUCTOR_2 (
    T0,
    T1
) 


define SB_CONSTRUCTOR_3#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2) for the currently described class.

#define SB_CONSTRUCTOR_3 (
    T0,
    T1,
    T2
) 


define SB_CONSTRUCTOR_4#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3) for the currently described class.

#define SB_CONSTRUCTOR_4 (
    T0,
    T1,
    T2,
    T3
) 


define SB_CONSTRUCTOR_5#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4) for the currently described class.

#define SB_CONSTRUCTOR_5 (
    T0,
    T1,
    T2,
    T3,
    T4
) 


define SB_CONSTRUCTOR_6#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5) for the currently described class.

#define SB_CONSTRUCTOR_6 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5
) 


define SB_CONSTRUCTOR_7#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6) for the currently described class.

#define SB_CONSTRUCTOR_7 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6
) 


define SB_CONSTRUCTOR_8#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7) for the currently described class.

#define SB_CONSTRUCTOR_8 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7
) 


define SB_CONSTRUCTOR_9#

Declares a class constructor (see Introspection ) CLASS(T0,T1,T2,T3,T4,T5,T6,T7,T8) for the currently described class.

#define SB_CONSTRUCTOR_9 (
    T0,
    T1,
    T2,
    T3,
    T4,
    T5,
    T6,
    T7,
    T8
) 


define SB_CONSTRUCTOR_END#

This macro declares the end of a constructor description started with SB_CONSTRUCTOR_0_BEGIN or SB_CONSTRUCTOR_N_BEGIN in the class interface (see Introspection ).

#define SB_CONSTRUCTOR_END 

See also: SB_CONSTRUCTOR_0_BEGIN, SB_CONSTRUCTOR_N_BEGIN


define SB_CONSTRUCTOR_N_BEGIN#

A general and advanced way to declare a constructor that takes N arguments (at least 1 argument); types of arguments are provided after N.

#define SB_CONSTRUCTOR_N_BEGIN (
    N,
    ...
) 

This advanced declaration is used to provide documentation for a constructor. If you don't need to provide documentation, then you can use the SB_CONSTRUCTOR_N (change N to the actual number of parameters) macro.

Let's say you have a constructor SEMyClass(int i, float v), then, in the class descriptor file, you can expose it as follows:

SB_CLASS_BEGIN(SEMyClass);

    // ...

    SB_FACTORY_BEGIN;

        SB_CONSTRUCTOR_N_BEGIN(2, int, float)
            SB_CALLABLE_MEMBER_DOC_BRIEF("A default constructor"),
            SB_CALLABLE_MEMBER_DOC_PARAM("i", "index"),
            SB_CALLABLE_MEMBER_DOC_PARAM("v", "value")
        SB_CONSTRUCTOR_END

    SB_FACTORY_END;

    // ...

SB_CLASS_END(SEMyClass);

See Introspection

See also: SB_CONSTRUCTOR_END, SB_CONSTRUCTOR_0_BEGIN


define SB_FACTORY_BEGIN#

Declares the beginning of the class factory (see Introspection )

#define SB_FACTORY_BEGIN 


define SB_FACTORY_END#

Declares the end of the class factory (see Introspection )

#define SB_FACTORY_END