Classes | |
| class | SBCClassInterface |
| This class describes a class interface in a class proxy. More... | |
Typedefs | |
| typedef SBCClassInterface | SBInterface |
| The short name of SBCClassInterface. | |
Descriptions of class interfaces | |
| #define | SB_INTERFACE_BEGIN |
| Declares the beginning of the class interface. | |
| #define | SB_INTERFACE_END |
| Declares the end of the class interface. | |
Descriptions of functions | |
| #define | SB_FUNCTION_0(OUTPUT, CLASS, FUNCTION) |
| Declares a class function OUTPUT CLASS::FUNCTION() | |
| #define | SB_FUNCTION_1(OUTPUT, CLASS, FUNCTION, T0) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0) | |
| #define | SB_FUNCTION_2(OUTPUT, CLASS, FUNCTION, T0, T1) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1) | |
| #define | SB_FUNCTION_3(OUTPUT, CLASS, FUNCTION, T0, T1, T2) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2) | |
| #define | SB_FUNCTION_4(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3) | |
| #define | SB_FUNCTION_5(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4) | |
| #define | SB_FUNCTION_6(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5) | |
| #define | SB_FUNCTION_7(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6) | |
| #define | SB_FUNCTION_8(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7) | |
| #define | SB_FUNCTION_9(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8) | |
| #define | SB_FUNCTION_10(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9) | |
| #define | SB_FUNCTION_11(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10) | |
| #define | SB_FUNCTION_12(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11) | |
| #define | SB_FUNCTION_13(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12) | |
| #define | SB_FUNCTION_14(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13) | |
| #define | SB_FUNCTION_15(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14) | |
| #define | SB_FUNCTION_16(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) |
| Declares a class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15) | |
Descriptions of const functions | |
| #define | SB_CONST_FUNCTION_0(OUTPUT, CLASS, FUNCTION) |
| Declares a const class function OUTPUT CLASS::FUNCTION() | |
| #define | SB_CONST_FUNCTION_1(OUTPUT, CLASS, FUNCTION, T0) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0) | |
| #define | SB_CONST_FUNCTION_2(OUTPUT, CLASS, FUNCTION, T0, T1) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1) | |
| #define | SB_CONST_FUNCTION_3(OUTPUT, CLASS, FUNCTION, T0, T1, T2) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2) | |
| #define | SB_CONST_FUNCTION_4(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3) | |
| #define | SB_CONST_FUNCTION_5(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4) | |
| #define | SB_CONST_FUNCTION_6(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5) | |
| #define | SB_CONST_FUNCTION_7(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6) | |
| #define | SB_CONST_FUNCTION_8(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7) | |
| #define | SB_CONST_FUNCTION_9(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8) | |
| #define | SB_CONST_FUNCTION_10(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9) | |
| #define | SB_CONST_FUNCTION_11(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10) | |
| #define | SB_CONST_FUNCTION_12(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11) | |
| #define | SB_CONST_FUNCTION_13(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12) | |
| #define | SB_CONST_FUNCTION_14(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13) | |
| #define | SB_CONST_FUNCTION_15(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14) | |
| #define | SB_CONST_FUNCTION_16(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) |
| Declares a const class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15) | |
Descriptions of static functions | |
| #define | SB_STATIC_FUNCTION_0(OUTPUT, CLASS, FUNCTION) |
| Declares a static class function OUTPUT CLASS::FUNCTION() | |
| #define | SB_STATIC_FUNCTION_1(OUTPUT, CLASS, FUNCTION, T0) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0) | |
| #define | SB_STATIC_FUNCTION_2(OUTPUT, CLASS, FUNCTION, T0, T1) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1) | |
| #define | SB_STATIC_FUNCTION_3(OUTPUT, CLASS, FUNCTION, T0, T1, T2) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2) | |
| #define | SB_STATIC_FUNCTION_4(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3) | |
| #define | SB_STATIC_FUNCTION_5(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4) | |
| #define | SB_STATIC_FUNCTION_6(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5) | |
| #define | SB_STATIC_FUNCTION_7(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6) | |
| #define | SB_STATIC_FUNCTION_8(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7) | |
| #define | SB_STATIC_FUNCTION_9(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8) | |
| #define | SB_STATIC_FUNCTION_10(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9) | |
| #define | SB_STATIC_FUNCTION_11(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10) | |
| #define | SB_STATIC_FUNCTION_12(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11) | |
| #define | SB_STATIC_FUNCTION_13(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12) | |
| #define | SB_STATIC_FUNCTION_14(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13) | |
| #define | SB_STATIC_FUNCTION_15(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14) | |
| #define | SB_STATIC_FUNCTION_16(OUTPUT, CLASS, FUNCTION, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) |
| Declares a static class function OUTPUT CLASS::FUNCTION(T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15) | |
Descriptions of attributes | |
| #define | SB_ATTRIBUTE_READ_ONLY(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE_CLEAR(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE_CLEAR_ARRAY(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE_RANGE(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE_RANGE_SLIDER(TYPE, CLASS, NAME, DESCRIPTION, GROUP) |
| #define | SB_ATTRIBUTE_READ_WRITE_LIST(CLASS, NAME, DESCRIPTION, GROUP) |
| #define SB_ATTRIBUTE_READ_ONLY | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a non-modifiable attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION. String or numeric attributes will be shown as a text in a label, pointer attributes (e.g. a pointer to a SBAtom node) will be represented as a button.
The following functionality should be present in the CLASS:
Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "NumberOfEdges" of type "unsigned int" from a class called "SEMyVisualModel". You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows:
| #define SB_ATTRIBUTE_READ_WRITE | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION and with the possibility to modify it using a text edit for numerical and string values, or a check box for boolean values.
The following functionality should be present in the CLASS:
Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "ShowLines" of type "bool" from a class called "SEMyVisualModel". You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows:
| #define SB_ATTRIBUTE_READ_WRITE_CLEAR | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION and with the possibility to modify it using a text edit for numerical and string values, or a check box for boolean values.
The following functionality should be present in the CLASS:
Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "Comment" of type "std::string" from a class called "SEMyVisualModel". You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows:
| #define SB_ATTRIBUTE_READ_WRITE_CLEAR_ARRAY | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable array attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION.
| #define SB_ATTRIBUTE_READ_WRITE_LIST | ( | CLASS, | |
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable attribute NAME from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION and with the possibility to choose from a list using a combo box.
The following functionality should be present in the CLASS:
Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "VisualizationPreset" from a class called "SEMyVisualModel" and that has a limited number of variants. You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows:
| #define SB_ATTRIBUTE_READ_WRITE_RANGE | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION and with the possibility to modify it using a spin box that changes from a given minimum value to a given maximum value with a given step size.
The following functionality should be present in the CLASS:
TYPE is not of the SBQuantity type.Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "Radius" of type "SBQuantity::length" from a class called "SEMyVisualModel". You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows:
| #define SB_ATTRIBUTE_READ_WRITE_RANGE_SLIDER | ( | TYPE, | |
| CLASS, | |||
| NAME, | |||
| DESCRIPTION, | |||
| GROUP | |||
| ) |
Declares a modifiable attribute NAME of type TYPE from a class CLASS which associated functionality should be exposed and which should also be accessible for users in the Inspector in a group GROUP with a description name DESCRIPTION and with the possibility to modify it using a slider (QSlider) that changes from a given minimum value to a given maximum value with a given step size.
The following functionality should be present in the CLASS:
TYPE is not of the SBQuantity type.Note, that this macros also exposes the abovementioned functions associated with an attribute NAME, so you do not need to expose them using e.g. SB_FUNCTION_1 macros.
Example: Let's say that we want to expose in the Inspector an attribute called "Opacity" of type "unsigned int" from a class called "SEMyVisualModel". And let's say that this Opacity attribute changes from 0 to 100% with a single step of 1%. You need to have the following functions implemented in the class CLASS:
Then, in the class descriptor file, you can expose this functionality and the attribute in the Inspector as follows: