#include <mi32/stddefns.h>#include <sml/stype.h>

Go to the source code of this file.
Classes | |
| class | SML::CLASSMEMBER |
Namespaces | |
| namespace | SML |
Defines | |
| #define | RVCSYSLIBCLASSEXPORT MI_DLLCLASSIMPORT |
| #define | RVCSYSLIBEXPORT MI_DLLIMPORT |
| #define | SMLCLASSMEMBER_ENUM_RO(smlname, Class, membername, subtype, enumname, mask, desc) { smlname, STYPE_Enum, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, size, NULL, enumname, NULL, desc} |
| #define | SMLCLASSMEMBER_ENUM_RW(smlname, Class, membername, subtype, enumname, mask, desc) { smlname, STYPE_Enum, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, mask, NULL, enumname, NULL, desc} |
| #define | SMLCLASSMEMBER_NUM_RO(smlname, Class, membername, subtype, desc) { smlname, STYPE_Num, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_NUM_RW(smlname, Class, membername, subtype, desc) { smlname, STYPE_Num, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_SMLFLAG_RO(smlname, Class, membername, subtype, smlflags, mask, desc) { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, size, NULL, NULL, smlflags, desc} |
| #define | SMLCLASSMEMBER_SMLFLAG_RW(smlname, Class, membername, subtype, smlflags, mask, desc) { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, mask, NULL, NULL, smlflags, desc} |
| #define | SMLCLASSMEMBER_STR_FIXEDSIZE_RO(smlname, Class, membername, subtype, sizeOf, desc) { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, sizeOf, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STR_FIXEDSIZE_RW(smlname, Class, membername, subtype, sizeOf, desc) { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, sizeOf, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STR_PTR_RO(smlname, Class, membername, subtype, desc) { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STR_PTR_RW(smlname, Class, membername, subtype, desc) { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STRUCT_INLINE_RO(smlname, Class, membername, classname, desc) { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSReadOnly, NULL, classname, offsetof(Class, membername), 1, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STRUCT_INLINE_RW(smlname, Class, membername, classname, desc) { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, classname, offsetof(Class, membername), 1, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STRUCT_PTR_RO(smlname, Class, membername, classname, desc) { smlname, STYPE_ClassRef, SMLCLASSReadSimple, NULL, NULL, classname, offsetof(Class::membername), 0, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_STRUCT_PTR_RW(smlname, Class, membername, classname, desc) { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, classname, offsetof(Class::membername), 0, 0, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_UINT32FLAG_RO(smlname, Class, membername, flagval, invert, desc) { smlname, STYPE_Num, SMLCLASSReadULONGFlag, NULL, NULL, classname, offsetof(Class, membername), flagval, invert, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMEMBER_UINT32FLAG_RW(smlname, Class, membername, flagval, invert, desc) { smlname, STYPE_Num, SMLCLASSReadULONGFlag, SMLCLASSWriteULONGFlag, NULL, classname, offsetof(Class, membername), flagval, invert, NULL, NULL, NULL, desc} |
| #define | SMLCLASSMETHOD(func) { #func, STYPE_Constant, NULL, NULL, &FUNC_##func } |
| #define | SMLCLASSReadOnly SML::CLASSReadOnly |
| #define | SMLCLASSReadPassThrough SML::CLASSReadPassThrough |
| #define | SMLCLASSReadSimple SML::CLASSReadSimple |
| #define | SMLCLASSReadULONGFlag SML::CLASSReadULONGFlag |
| #define | SMLCLASSWriteSimple SML::CLASSWriteSimple |
| #define | SMLCLASSWriteTableNum SML::CLASSWriteTableNum |
| #define | SMLCLASSWriteULONGFlag SML::CLASSWriteULONGFlag |
Typedefs | |
| typedef SML::CLASSMEMBER | SMLCLASSMEMBER |
Functions | |
| RVCSYSLIBEXPORT void | SML::CLASSReadOnly (CONTEXT *, CLASSMEMBER *, void *, ARG *) |
| void | SML::CLASSReadPassThrough (CONTEXT *, CLASSMEMBER *, void *vdata, ARG *ret) |
| RVCSYSLIBEXPORT void | SML::CLASSReadSimple (CONTEXT *, CLASSMEMBER *, void *, ARG *) |
| RVCSYSLIBEXPORT void | SML::CLASSReadULONGFlag (CONTEXT *, CLASSMEMBER *, void *, ARG *) |
| RVCSYSLIBEXPORT void | SML::CLASSWriteSimple (CONTEXT *, CLASSMEMBER *, void *, ARG *) |
| void | SML::CLASSWriteTableNum (CONTEXT *context, CLASSMEMBER *member, void *vdata, ARG *arg) |
| RVCSYSLIBEXPORT void | SML::CLASSWriteULONGFlag (CONTEXT *, CLASSMEMBER *, void *, ARG *) |
| #define RVCSYSLIBCLASSEXPORT MI_DLLCLASSIMPORT |
| #define RVCSYSLIBEXPORT MI_DLLIMPORT |
| #define SMLCLASSMEMBER_ENUM_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| enumname, | |||||
| mask, | |||||
| desc | ) | { smlname, STYPE_Enum, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, size, NULL, enumname, NULL, desc} |
SMLFLAG flags (using named enums).
| #define SMLCLASSMEMBER_ENUM_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| enumname, | |||||
| mask, | |||||
| desc | ) | { smlname, STYPE_Enum, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, mask, NULL, enumname, NULL, desc} |
| #define SMLCLASSMEMBER_NUM_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| desc | ) | { smlname, STYPE_Num, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
!
WARNING: Experamental macros Macros for def'n of class members which are directly accessable. These macros take the following parameters... (not all macros take all parameters)
smlname : the name of the member as it will appear in sml (in quotes) Class : C++ class/struct name member : C++ class/struct member name subtype : An SML::CLASSMEMBER::TYPE value classname : For members which are classes themselves, this is the name of the member's class as it appears in SML (in quotes) size : Only needed for strings. Size of the string in BYTES flagval : For UINT32 Flags, a constant flag value to check for. invert : For UINT32 Flags. If 1, the SML meaning of the flag is opposite the meaning implied by flagval smlflags : For SML::FLAG: SML::FLAG array of flags enumname : For ENUM: name (in quotes) of ENUM list to lookup eg: "UNITS::Distance" Enums have the advantage that the can be defined in a central location and the list can be generated as-needed from some other source (like units.txt) mask : For SML::FLAG or ENUM: Optional bitmask to allow a subset of bits desc : Default description. This is used to build smlclass.txt
Macros for easy def'n of class members which are directly accessable
The macros exist in 2 flavors for each type of data: SMLCLASSMEMBER_XXXXX_RO : Read Only SMLCLASSMEMBER_XXXXX_RW : Read/Write
It is also possible to have class members which can only be written, but it requires more than the simple macro defn's here. For an example of such a class, see the COLOR class in qqstruct.c
The available datatypes are... SMLCLASSMEMBER_NUM_XX SMLCLASSMEMBER_STR_PTR_XX SMLCLASSMEMBER_STR_FIXEDSIZE_XX SMLCLASSMEMBER_STRUCT_PTR_XX SMLCLASSMEMBER_STRUCT_INLINE_XX SMLCLASSMEMBER_UINT32FLAG_XX SMLCLASSMEMBER_SMLFLAG_XX SMLCLASSMEMBER_ENUM_XX
| #define SMLCLASSMEMBER_NUM_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| desc | ) | { smlname, STYPE_Num, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define SMLCLASSMEMBER_SMLFLAG_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| smlflags, | |||||
| mask, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, size, NULL, NULL, smlflags, desc} |
SMLFLAG flags.
| #define SMLCLASSMEMBER_SMLFLAG_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| smlflags, | |||||
| mask, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, mask, NULL, NULL, smlflags, desc} |
| #define SMLCLASSMEMBER_STR_FIXEDSIZE_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| sizeOf, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, sizeOf, NULL, NULL, NULL, desc} |
String classes where the member is of a fixed size as part of the struct/class.
| #define SMLCLASSMEMBER_STR_FIXEDSIZE_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| sizeOf, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, sizeOf, NULL, NULL, NULL, desc} |
| #define SMLCLASSMEMBER_STR_PTR_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, NULL, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
String classes where the member is a (char*) or (MIUNICODE*).
| #define SMLCLASSMEMBER_STR_PTR_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| subtype, | |||||
| desc | ) | { smlname, STYPE_String, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, NULL, offsetof(Class, membername), subtype, 0, NULL, NULL, NULL, desc} |
| #define SMLCLASSMEMBER_STRUCT_INLINE_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| classname, | |||||
| desc | ) | { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSReadOnly, NULL, classname, offsetof(Class, membername), 1, 0, NULL, NULL, NULL, desc} |
Member is a class, not a pointer to a class.
| #define SMLCLASSMEMBER_STRUCT_INLINE_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| classname, | |||||
| desc | ) | { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, classname, offsetof(Class, membername), 1, 0, NULL, NULL, NULL, desc} |
| #define SMLCLASSMEMBER_STRUCT_PTR_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| classname, | |||||
| desc | ) | { smlname, STYPE_ClassRef, SMLCLASSReadSimple, NULL, NULL, classname, offsetof(Class::membername), 0, 0, NULL, NULL, NULL, desc} |
Member is a pointer to a class/struct.
| #define SMLCLASSMEMBER_STRUCT_PTR_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| classname, | |||||
| desc | ) | { smlname, STYPE_ClassRef, SMLCLASSReadSimple, SMLCLASSWriteSimple, NULL, classname, offsetof(Class::membername), 0, 0, NULL, NULL, NULL, desc} |
| #define SMLCLASSMEMBER_UINT32FLAG_RO | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| flagval, | |||||
| invert, | |||||
| desc | ) | { smlname, STYPE_Num, SMLCLASSReadULONGFlag, NULL, NULL, classname, offsetof(Class, membername), flagval, invert, NULL, NULL, NULL, desc} |
Member which is a flag in an UINT32.
| #define SMLCLASSMEMBER_UINT32FLAG_RW | ( | smlname, | |||
| Class, | |||||
| membername, | |||||
| flagval, | |||||
| invert, | |||||
| desc | ) | { smlname, STYPE_Num, SMLCLASSReadULONGFlag, SMLCLASSWriteULONGFlag, NULL, classname, offsetof(Class, membername), flagval, invert, NULL, NULL, NULL, desc} |
| #define SMLCLASSMETHOD | ( | func | ) | { #func, STYPE_Constant, NULL, NULL, &FUNC_##func } |
The rest of the member struct gets filled in by the installer STYPE_Constant is wrong, but will also be replaced by installer.
| #define SMLCLASSReadOnly SML::CLASSReadOnly |
| #define SMLCLASSReadPassThrough SML::CLASSReadPassThrough |
| #define SMLCLASSReadSimple SML::CLASSReadSimple |
| #define SMLCLASSReadULONGFlag SML::CLASSReadULONGFlag |
| #define SMLCLASSWriteSimple SML::CLASSWriteSimple |
| #define SMLCLASSWriteTableNum SML::CLASSWriteTableNum |
| #define SMLCLASSWriteULONGFlag SML::CLASSWriteULONGFlag |
| typedef SML::CLASSMEMBER SMLCLASSMEMBER |
1.6.1