#include <string>
#include <list>
Go to the source code of this file.
Namespaces | |
namespace | mxflib |
Classes | |
struct | ConstTypeRecord |
Single entry for a type to be defined - can be stored as a compile-time built structure. More... | |
class | TypeRecord |
Single entry for a type to be defined - built at run-time and can be stacked if required to allow out-of-order definitions. More... | |
struct | ConstClassRecord |
Single entry for a class to be defined - can be stored as a compile-time built structure. More... | |
class | ClassRecord |
Single entry for a class to be defined - built at run-time and can be stacked if required to allow out-of-order definitions. More... | |
struct | ConstDictionaryRecord |
Single entry for a dictionary to be defined - can be stored as a compile-time built structure. More... | |
class | Dictionary |
Run-time dictionary definition - built from other run-time record definitions. More... | |
class | Label |
A UL or end-swapped UUID label. More... | |
Defines | |
#define | MXFLIB_TYPE_START(Name) const ConstTypeRecord Name[] = { |
MXFLIB_TYPE_START - Use to start a type definition block. | |
#define | MXFLIB_TYPE_START_SYM(Name, Sym) const ConstTypeRecord Name[] = { { TypeSymbolSpace, "", "", "", "", "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_START_SYM - Use to start a type definition block and define a default symbol space. | |
#define | MXFLIB_TYPE_BASIC(Name, Detail, UL, Size, Endian) { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_BASIC - Use to define a "Basic" type. | |
#define | MXFLIB_TYPE_BASIC_SYM(Name, Detail, UL, Size, Endian, Sym) { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_BASIC_SYM - Use to define a "Basic" type and override the default symbol space. | |
#define | MXFLIB_TYPE_BASIC_REF(Name, Detail, UL, Size, Endian, RefType, RefTarget) { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_BASIC_REF - Use to define a "Basic" type that is a reference source or target. | |
#define | MXFLIB_TYPE_BASIC_REF_SYM(Name, Detail, UL, Size, Endian, RefType, RefTarget, Sym) { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_BASIC_REF_SYM - Use to define a "Basic" type that is a reference source or target and override the default symbol space. | |
#define | MXFLIB_TYPE_INTERPRETATION(Name, Detail, Base, UL, Size) { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_INTERPRETATION - Use to define an "Interpretation" type. | |
#define | MXFLIB_TYPE_INTERPRETATION_SYM(Name, Detail, Base, UL, Size, Sym) { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_INTERPRETATION_SYM - Use to define an "Interpretation" type and override the default symbol space. | |
#define | MXFLIB_TYPE_INTERPRETATION_REF(Name, Detail, Base, UL, Size, RefType, RefTarget) { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_INTERPRETATION_REF - Use to define an "Interpretation" type that is a reference source or target. | |
#define | MXFLIB_TYPE_INTERPRETATION_REF_SYM(Name, Detail, Base, UL, Size, RefType, RefTarget, Sym) { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_INTERPRETATION_REF_SYM - Use to define an "Interpretation" type that is a reference source or target and override the default symbol space. | |
#define | MXFLIB_TYPE_MULTIPLE(Name, Detail, Base, UL, IsBatch, Size) { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_MULTIPLE - Use to define a "Multiple" type. | |
#define | MXFLIB_TYPE_MULTIPLE_SYM(Name, Detail, Base, UL, IsBatch, Size, Sym) { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_MULTIPLE_SYM - Use to define a "Multiple" type and override the default symbol space. | |
#define | MXFLIB_TYPE_MULTIPLE_REF(Name, Detail, Base, UL, IsBatch, Size, RefType, RefTarget) { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_MULTIPLE_REF - Use to define a "Multiple" type that is a reference source or target. | |
#define | MXFLIB_TYPE_MULTIPLE_REF_SYM(Name, Detail, Base, UL, IsBatch, Size, RefType, RefTarget, Sym) { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_MULTIPLE_REF_SYM - Use to define a "Multiple" type that is a reference source or target and override the default symbol space. | |
#define | MXFLIB_TYPE_COMPOUND(Name, Detail, UL) { TypeCompound, Name, Detail, "", UL, "", 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_COMPOUND - Use to start the definition of a "Compound" type. | |
#define | MXFLIB_TYPE_COMPOUND_SYM(Name, Detail, UL, Sym) { TypeCompound, Name, Detail, "", UL, "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_COMPOUND_SYM - Use to start the definition of a "Compound" type and override the default symbol space. | |
#define | MXFLIB_TYPE_COMPOUND_ITEM(Name, Detail, Type, UL, Size) { TypeSub, Name, Detail, Type, UL, "", Size, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_COMPOUND_ITEM - Use to define an item within the current "Compound" type. | |
#define | MXFLIB_TYPE_COMPOUND_END |
MXFLIB_TYPE_COMPOUND_END - Use to end definition of a "Compound" type. | |
#define | MXFLIB_TYPE_ENUM(Name, Detail, Type, UL) { TypeEnum, Name, Detail, Type, UL, "", 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_ENUM - Use to start the definition of an "Enumeration" type. | |
#define | MXFLIB_TYPE_ENUM_SYM(Name, Detail, Type, UL, Sym) { TypeEnum, Name, Detail, Type, UL, "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_ENUM_SYM - Use to start the definition of a "Enumeration" type and override the default symbol space. | |
#define | MXFLIB_TYPE_ENUM_VALUE(Name, Detail, Value) { TypeSub, Name, Detail, "", "", Value, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_ENUM_VALUE - Use to define a value for the current "Enumeration" type. | |
#define | MXFLIB_LABEL(Name, Detail, UL) { TypeLabel, Name, Detail, "", UL, NULL, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_LABEL - Use to define a label. | |
#define | MXFLIB_LABEL_SYM(Name, Detail, UL, Sym) { TypeLabel, Name, Detail, "", UL, NULL, 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_LABEL_SYM - Use to define a label and override the default symbol space. | |
#define | MXFLIB_MASKED_LABEL(Name, Detail, UL, Mask) { TypeLabel, Name, Detail, "", UL, Mask, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_MASKED_LABEL - Use to define a masked label. | |
#define | MXFLIB_MASKED_LABEL_SYM(Name, Detail, UL, Mask, Sym) { TypeLabel, Name, Detail, "", UL, Mask, 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_MASKED_LABEL_SYM - Use to define a masked label and override the default symbol space. | |
#define | MXFLIB_TYPE_ENUM_END |
MXFLIB_TYPE_ENUM_END - Use to end definition of a "Enumeration" type. | |
#define | MXFLIB_TYPE_END { TypeNULL, "", "", "", "", "", 0, false, false, TypeRefUndefined, NULL, NULL } }; |
MXFLIB_TYPE_END - Use to end a type definition block. | |
#define | MXFLIB_CLASS_START(Name) const ConstClassRecord Name[] = { |
MXFLIB_CLASS_START - Use to start a class definition block. | |
#define | MXFLIB_CLASS_START_SYM(Name, Sym) const ConstClassRecord Name[] = { { ClassSymbolSpace, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_START_SYM - Use to start a class definition block and define a default symbol space. | |
#define | MXFLIB_CLASS_SET(Name, Detail, Base, UL) { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_SET - Use to define a local set that has 2-byte tags and 2-byte lengths. | |
#define | MXFLIB_CLASS_SET_SYM(Name, Detail, Base, UL, Sym) { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_SET_SYM - Use to define a local set that has 2-byte tags and 2-byte lengths and override the default symbol space. | |
#define | MXFLIB_CLASS_SET_NOSUB(Name, Detail, Base, UL) { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, false }, |
MXFLIB_CLASS_SET_NOSUB - Use to extend a local set that has 2-byte tags and 2-byte lengths, without extending sub-classes. | |
#define | MXFLIB_CLASS_SET_NOSUB_SYM(Name, Detail, Base, UL, Sym) { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, false }, |
MXFLIB_CLASS_SET_NOSUB_SYM - Use to extend a local set that has 2-byte tags and 2-byte lengths, without extending sub-classes, and override the default symbol space. | |
#define | MXFLIB_CLASS_SET_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_SET_END - Use to end a set definition. | |
#define | MXFLIB_CLASS_FIXEDPACK(Name, Detail, Base, UL) { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_FIXEDPACK - Use to define a fixed length pack (defined length pack). | |
#define | MXFLIB_CLASS_FIXEDPACK_SYM(Name, Detail, Base, UL, Sym) { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_FIXEDPACK_SYM - Use to define a fixed length pack (defined length pack) and override the default symbol space. | |
#define | MXFLIB_CLASS_FIXEDPACK_NOSUB(Name, Detail, Base, UL) { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, false }, |
MXFLIB_CLASS_FIXEDPACK - Use to extend a fixed length pack (defined length pack, without extending sub-classes. | |
#define | MXFLIB_CLASS_FIXEDPACK_NOSUB_SYM(Name, Detail, Base, UL, Sym) { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, false }, |
MXFLIB_CLASS_FIXEDPACK_SYM - Use to extend a fixed length pack (defined length pack), without extending sub-classes, and override the default symbol space. | |
#define | MXFLIB_CLASS_FIXEDPACK_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_FIXEDPACK_END - Use to end a pack definition. | |
#define | MXFLIB_CLASS_ITEM(Name, Detail, Usage, Type, MinSize, MaxSize, Tag, UL, Default, DValue) { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ITEM - Use to define a single item in a set or pack. | |
#define | MXFLIB_CLASS_ITEM_REF(Name, Detail, Usage, Type, MinSize, MaxSize, Tag, UL, RefType, RefTarget, Default, DValue) { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_ITEM_REF - Use to define a single item in a set or pack that is a reference source or target. | |
#define | MXFLIB_CLASS_ITEM_SYM(Name, Detail, Usage, Type, MinSize, MaxSize, Tag, UL, Default, DValue, Sym) { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_ITEM_SYM - Use to define a single item in a set or pack and override the default symbol space. | |
#define | MXFLIB_CLASS_ITEM_REF_SYM(Name, Detail, Usage, Type, MinSize, MaxSize, Tag, UL, RefType, RefTarget, Default, DValue, Sym) { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, RefType, RefTarget, Sym, true }, |
MXFLIB_CLASS_ITEM_REF_SYM - Use to define a single item in a set or pack that is a reference source or target and override the default symbol space. | |
#define | MXFLIB_CLASS_VECTOR(Name, Detail, Usage, Tag, UL) { ClassVector, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_VECTOR - Use to define a vector holding items. | |
#define | MXFLIB_CLASS_VECTOR_REF(Name, Detail, Usage, Tag, UL, RefType, RefTarget) { ClassVector, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_VECTOR_REF - Use to define a vector holding items that are reference sources or targets. | |
#define | MXFLIB_CLASS_VECTOR_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_VECTOR_END - Use to end a vector definition. | |
#define | MXFLIB_CLASS_ARRAY(Name, Detail, Usage, Tag, UL) { ClassArray, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ARRAY - Use to define an array holding items. | |
#define | MXFLIB_CLASS_ARRAY_REF(Name, Detail, Usage, Tag, UL, RefType, RefTarget) { ClassArray, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_ARRAY - Use to define an array holding items. | |
#define | MXFLIB_CLASS_ARRAY_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ARRAY_END - Use to end a array definition. | |
#define | MXFLIB_CLASS_RENAME(Name, Detail, Base, UL) { ClassRename, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_RENAME - Use to rename a set or pack without defining new members. | |
#define | MXFLIB_CLASS_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true } }; |
MXFLIB_CLASS_END - Use to end a class definition block. | |
#define | MXFLIB_DICTIONARY_START(Name) const ConstDictionaryRecord Name[] = { |
MXFLIB_DICTIONARY_START - Use to start a type definition block. | |
#define | MXFLIB_DICTIONARY_TYPES(Types) { DictionaryTypes, Types }, |
MXFLIB_DICTIONARY_TYPES - Add a set of types to the current dictionary. | |
#define | MXFLIB_DICTIONARY_CLASSES(Classes) { DictionaryClasses, Classes }, |
MXFLIB_DICTIONARY_CLASSES - Add a set of classes to the current dictionary. | |
#define | MXFLIB_DICTIONARY_END { DictionaryNULL, NULL } }; |
MXFLIB_DICTIONARY_END - Use to end a dictionary definition block. | |
Typedefs | |
typedef SmartPtr< TypeRecord > | TypeRecordPtr |
A smart pointer to a TypeRecord. | |
typedef std::list< TypeRecordPtr > | TypeRecordList |
List of smart pointers to TypeRecords. | |
typedef std::list< TypeRecordList > | TypeRecordListList |
List of TypeRecordLists. | |
typedef TypeRef | ClassRef |
Referencing types for classes - an exact copy of the type ref kinds. | |
typedef SmartPtr< ClassRecord > | ClassRecordPtr |
A smart pointer to a ClassRecord. | |
typedef std::list< ClassRecordPtr > | ClassRecordList |
List of smart pointers to ClassRecords. | |
typedef std::list< ClassRecordList > | ClassRecordListList |
List of ClassRecordLists. | |
typedef SmartPtr< Dictionary > | DictionaryPtr |
A smart pointer to a Dictionary. | |
typedef std::list< DictionaryPtr > | DictionaryList |
List of smart pointers to Dictionary objects. | |
typedef SmartPtr< Label > | LabelPtr |
Enumerations | |
enum | TypeClass { TypeNULL = 0, TypeBasic, TypeInterpretation, TypeMultiple, TypeCompound, TypeSub, TypeEnum, TypeLabel, TypeSymbolSpace } |
Enumeration identifying the type of an in-memory type definition entry to be processed by LoadTypes(). More... | |
enum | TypeRef { TypeRefUndefined = -1, TypeRefNone = 0, TypeRefStrong, TypeRefWeak, TypeRefTarget, TypeRefGlobal } |
Referencing kinds for Types. More... | |
enum | ClassType { ClassNULL = 0, ClassPack, ClassSet, ClassVector, ClassArray, ClassItem, ClassRename, ClassSymbolSpace } |
Enumeration identifying the type of an in-memory type definition entry to be processed by LoadTypes(). More... | |
enum | ClassUsage { ClassUsageNULL = 0, ClassUsageOptional, ClassUsageDecoderRequired, ClassUsageEncoderRequired, ClassUsageRequired, ClassUsageBestEffort, ClassUsageToxic, ClassUsageDark } |
Usage types for classes. More... | |
enum | DictionaryType { DictionaryNULL = 0, DictionaryTypes, DictionaryClasses } |
Enumeration identifying the type of an in-memory dictionary definition entry to be processed by LoadDictionary(). More... | |
Functions | |
int | LoadTypes (char *TypesFile, SymbolSpacePtr DefaultSymbolSpace) |
Load types from the specified XML definitions. | |
int | LoadTypes (const ConstTypeRecord *TypesData, SymbolSpacePtr DefaultSymbolSpace) |
Load types from the specified in-memory definitions. | |
int | LoadTypes (TypeRecordList &TypesData, SymbolSpacePtr DefaultSymbolSpace) |
Load types from the specified in-memory definitions. | |
MDTraitsPtr | LookupTraits (const char *Name) |
Find the traits for a given type - DEPRECATED. | |
bool | DisableBuiltInTraits (void) |
Disable automatic loading of built-in traits. | |
int | LoadClasses (ClassRecordList &ClassesData, SymbolSpacePtr DefaultSymbolSpace) |
Load classes from the specified in-memory definitions. | |
int | LoadClasses (const ConstClassRecord *ClassData, SymbolSpacePtr DefaultSymbolSpace) |
Load classeses from the specified in-memory definitions. | |
int | LoadDictionary (DictionaryPtr &DictionaryData, SymbolSpacePtr DefaultSymbolSpace, bool FastFail) |
Load dictionary from the specified in-memory definitions with a default symbol space. | |
int | LoadDictionary (DictionaryPtr &DictionaryData, bool FastFail=false, SymbolSpacePtr DefaultSymbolSpace=MXFLibSymbols) |
Load dictionary from the specified in-memory definitions. | |
int | LoadDictionary (const ConstDictionaryRecord *DictionaryData, SymbolSpacePtr DefaultSymbolSpace, bool FastFail) |
Load dictionary from the specified in-memory definitions with a default symbol space. | |
int | LoadDictionary (const ConstDictionaryRecord *DictionaryData, bool FastFail=false, SymbolSpacePtr DefaultSymbolSpace=MXFLibSymbols) |
Load dictionary from the specified in-memory definitions. | |
int | LoadDictionary (const char *DictFile, SymbolSpacePtr DefaultSymbolSpace, bool FastFail) |
Load dictionary from the specified XML definitions with a default symbol space. | |
int | LoadDictionary (std::string DictFile, SymbolSpacePtr DefaultSymbolSpace, bool FastFail=false) |
Load dictionary from the specified XML definitions with a default symbol space. | |
int | LoadDictionary (const char *DictFile, bool FastFail=false, SymbolSpacePtr DefaultSymbolSpace=MXFLibSymbols) |
Load dictionary from the specified XML definitions. | |
int | LoadDictionary (std::string DictFile, bool FastFail=false, SymbolSpacePtr DefaultSymbolSpace=MXFLibSymbols) |
Load dictionary from the specified XML definitions. | |
Variables | |
const ClassRef | ClassRefUndefined = TypeRefUndefined |
ClassRef version of TypeRefUndefined. | |
const ClassRef | ClassRefNone = TypeRefNone |
ClassRef version of TypeRefNone. | |
const ClassRef | ClassRefStrong = TypeRefStrong |
ClassRef version of TypeRefStrong. | |
const ClassRef | ClassRefWeak = TypeRefWeak |
ClassRef version of TypeRefWeak. | |
const ClassRef | ClassRefGlobal = TypeRefGlobal |
ClassRef version of TypeRefGlobal. | |
const ClassRef | ClassRefTarget = TypeRefTarget |
ClassRef version of TypeRefTarget. |
#define MXFLIB_CLASS_ARRAY | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Tag, | |||||
UL | ) | { ClassArray, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ARRAY - Use to define an array holding items.
Name | The name of the array being defined | |
Detail | A human readable description of the array | |
Usage | The usage type of this array (ClassUsageRequired, ClassUsageOptional, etc.) | |
Tag | The tag for this array as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_ARRAY_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ARRAY_END - Use to end a array definition.
#define MXFLIB_CLASS_ARRAY_REF | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Tag, | |||||
UL, | |||||
RefType, | |||||
RefTarget | ) | { ClassArray, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_ARRAY - Use to define an array holding items.
Name | The name of the array being defined | |
Detail | A human readable description of the array | |
Usage | The usage type of this array (ClassUsageRequired, ClassUsageOptional, etc.) | |
Tag | The tag for this array as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true } }; |
MXFLIB_CLASS_END - Use to end a class definition block.
#define MXFLIB_CLASS_FIXEDPACK | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL | ) | { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_FIXEDPACK - Use to define a fixed length pack (defined length pack).
Name | The name of the pack being defined | |
Detail | A human readable description of the pack | |
Base | The base class if this pack is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_FIXEDPACK_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_FIXEDPACK_END - Use to end a pack definition.
#define MXFLIB_CLASS_FIXEDPACK_NOSUB | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL | ) | { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, false }, |
MXFLIB_CLASS_FIXEDPACK - Use to extend a fixed length pack (defined length pack, without extending sub-classes.
Name | The name of the pack being extended | |
Detail | A human readable description of the pack | |
Base | The base class if this pack is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_FIXEDPACK_NOSUB_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Sym | ) | { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, false }, |
MXFLIB_CLASS_FIXEDPACK_SYM - Use to extend a fixed length pack (defined length pack), without extending sub-classes, and override the default symbol space.
Name | The name of the pack being extended | |
Detail | A human readable description of the pack | |
Base | The base class if this pack is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Sym | The name of the symbol space for this set |
#define MXFLIB_CLASS_FIXEDPACK_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Sym | ) | { ClassPack, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_FIXEDPACK_SYM - Use to define a fixed length pack (defined length pack) and override the default symbol space.
Name | The name of the pack being defined | |
Detail | A human readable description of the pack | |
Base | The base class if this pack is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Sym | The name of the symbol space for this set |
#define MXFLIB_CLASS_ITEM | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Type, | |||||
MinSize, | |||||
MaxSize, | |||||
Tag, | |||||
UL, | |||||
Default, | |||||
DValue | ) | { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_ITEM - Use to define a single item in a set or pack.
Name | The name of the item being defined | |
Detail | A human readable description of the item | |
Usage | The usage type of this item (ClassUsageRequired, ClassUsageOptional, etc.) | |
Type | The type of this item | |
Tag | The tag for this item as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Default | The default value for this item as a string (or NULL if none) | |
DValue | The distinguished value for this item as a string (or NULL if none) |
#define MXFLIB_CLASS_ITEM_REF | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Type, | |||||
MinSize, | |||||
MaxSize, | |||||
Tag, | |||||
UL, | |||||
RefType, | |||||
RefTarget, | |||||
Default, | |||||
DValue | ) | { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_ITEM_REF - Use to define a single item in a set or pack that is a reference source or target.
Name | The name of the item being defined | |
Detail | A human readable description of the item | |
Usage | The usage type of this item (ClassUsageRequired, ClassUsageOptional, etc.) | |
Type | The type of this item | |
Tag | The tag for this item as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Default | The default value for this item as a string (or NULL if none) | |
DValue | The distinguished value for this item as a string (or NULL if none) | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target |
#define MXFLIB_CLASS_ITEM_REF_SYM | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Type, | |||||
MinSize, | |||||
MaxSize, | |||||
Tag, | |||||
UL, | |||||
RefType, | |||||
RefTarget, | |||||
Default, | |||||
DValue, | |||||
Sym | ) | { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, RefType, RefTarget, Sym, true }, |
MXFLIB_CLASS_ITEM_REF_SYM - Use to define a single item in a set or pack that is a reference source or target and override the default symbol space.
Name | The name of the item being defined | |
Detail | A human readable description of the item | |
Usage | The usage type of this item (ClassUsageRequired, ClassUsageOptional, etc.) | |
Type | The type of this item | |
Tag | The tag for this item as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target | |
Default | The default value for this item as a string (or NULL if none) | |
DValue | The distinguished value for this item as a string (or NULL if none) | |
Sym | The name of the symbol space for this set |
#define MXFLIB_CLASS_ITEM_SYM | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Type, | |||||
MinSize, | |||||
MaxSize, | |||||
Tag, | |||||
UL, | |||||
Default, | |||||
DValue, | |||||
Sym | ) | { ClassItem, MinSize, MaxSize, Name, Detail, Usage, Type, Tag, UL, Default, DValue, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_ITEM_SYM - Use to define a single item in a set or pack and override the default symbol space.
Name | The name of the item being defined | |
Detail | A human readable description of the item | |
Usage | The usage type of this item (ClassUsageRequired, ClassUsageOptional, etc.) | |
Type | The type of this item | |
Tag | The tag for this item as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Default | The default value for this item as a string (or NULL if none) | |
DValue | The distinguished value for this item as a string (or NULL if none) | |
Sym | The name of the symbol space for this set |
#define MXFLIB_CLASS_RENAME | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL | ) | { ClassRename, 0, 0, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_RENAME - Use to rename a set or pack without defining new members.
Name | The name of the class being defined | |
Detail | A human readable description of the class | |
Base | The base class of which this is a rename | |
UL | The UL of this class (if one exists, else "") |
#define MXFLIB_CLASS_SET | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL | ) | { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_SET - Use to define a local set that has 2-byte tags and 2-byte lengths.
Name | The name of the set being defined | |
Detail | A human readable description of the set | |
Base | The base class if this set is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_SET_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_SET_END - Use to end a set definition.
#define MXFLIB_CLASS_SET_NOSUB | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL | ) | { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", NULL, false }, |
MXFLIB_CLASS_SET_NOSUB - Use to extend a local set that has 2-byte tags and 2-byte lengths, without extending sub-classes.
Name | The name of the set being extended | |
Detail | A human readable description of the set | |
Base | The base class if this set is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_SET_NOSUB_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Sym | ) | { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, false }, |
MXFLIB_CLASS_SET_NOSUB_SYM - Use to extend a local set that has 2-byte tags and 2-byte lengths, without extending sub-classes, and override the default symbol space.
Name | The name of the set being extended | |
Detail | A human readable description of the set | |
Base | The base class if this set is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Sym | The name of the symbol space for this set |
#define MXFLIB_CLASS_SET_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Sym | ) | { ClassSet, 2, 2, Name, Detail, ClassUsageNULL, Base, 0, UL, NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_SET_SYM - Use to define a local set that has 2-byte tags and 2-byte lengths and override the default symbol space.
Name | The name of the set being defined | |
Detail | A human readable description of the set | |
Base | The base class if this set is a derived class, else "" | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
Sym | The name of the symbol space for this set |
MXFLIB_CLASS_START - Use to start a class definition block.
#define MXFLIB_CLASS_START_SYM | ( | Name, | |||
Sym | ) | const ConstClassRecord Name[] = { { ClassSymbolSpace, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", Sym, true }, |
MXFLIB_CLASS_START_SYM - Use to start a class definition block and define a default symbol space.
#define MXFLIB_CLASS_VECTOR | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Tag, | |||||
UL | ) | { ClassVector, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_VECTOR - Use to define a vector holding items.
Name | The name of the vector being defined | |
Detail | A human readable description of the vector | |
Usage | The usage type of this vector (ClassUsageRequired, ClassUsageOptional, etc.) | |
Tag | The tag for this vector as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") |
#define MXFLIB_CLASS_VECTOR_END { ClassNULL, 0, 0, "", "", ClassUsageNULL, "", 0, "", NULL, NULL, ClassRefUndefined, "", NULL, true }, |
MXFLIB_CLASS_VECTOR_END - Use to end a vector definition.
#define MXFLIB_CLASS_VECTOR_REF | ( | Name, | |||
Detail, | |||||
Usage, | |||||
Tag, | |||||
UL, | |||||
RefType, | |||||
RefTarget | ) | { ClassVector, 0, 0, Name, Detail, Usage, "", Tag, UL, NULL, NULL, RefType, RefTarget, NULL, true }, |
MXFLIB_CLASS_VECTOR_REF - Use to define a vector holding items that are reference sources or targets.
Name | The name of the vector being defined | |
Detail | A human readable description of the vector | |
Usage | The usage type of this vector (ClassUsageRequired, ClassUsageOptional, etc.) | |
Tag | The tag for this vector as a string of hex bytes e.g. "03 2b" (if in a set, else "") | |
UL | The UL of this class as a hex string e.g. "06 0e 2b 34 etc." (if one exists, else "") | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target |
#define MXFLIB_DICTIONARY_CLASSES | ( | Classes | ) | { DictionaryClasses, Classes }, |
MXFLIB_DICTIONARY_CLASSES - Add a set of classes to the current dictionary.
#define MXFLIB_DICTIONARY_END { DictionaryNULL, NULL } }; |
MXFLIB_DICTIONARY_END - Use to end a dictionary definition block.
MXFLIB_DICTIONARY_START - Use to start a type definition block.
MXFLIB_DICTIONARY_TYPES - Add a set of types to the current dictionary.
#define MXFLIB_LABEL | ( | Name, | |||
Detail, | |||||
UL | ) | { TypeLabel, Name, Detail, "", UL, NULL, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_LABEL - Use to define a label.
Name | The name of the label being defined | |
Detail | A human readable description of the label | |
UL | The UL, or end-swapped UUID of thsi label |
#define MXFLIB_LABEL_SYM | ( | Name, | |||
Detail, | |||||
UL, | |||||
Sym | ) | { TypeLabel, Name, Detail, "", UL, NULL, 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_LABEL_SYM - Use to define a label and override the default symbol space.
Name | The name of the label being defined | |
Detail | A human readable description of the label | |
UL | The UL, or end-swapped UUID of thsi label | |
Sym | The name of the symbol space for this type |
#define MXFLIB_MASKED_LABEL | ( | Name, | |||
Detail, | |||||
UL, | |||||
Mask | ) | { TypeLabel, Name, Detail, "", UL, Mask, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_MASKED_LABEL - Use to define a masked label.
Name | The name of the label being defined | |
Detail | A human readable description of the label | |
UL | The UL, or end-swapped UUID of thsi label | |
Mask | The mask of bits that can change in this label |
#define MXFLIB_MASKED_LABEL_SYM | ( | Name, | |||
Detail, | |||||
UL, | |||||
Mask, | |||||
Sym | ) | { TypeLabel, Name, Detail, "", UL, Mask, 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_MASKED_LABEL_SYM - Use to define a masked label and override the default symbol space.
Name | The name of the label being defined | |
Detail | A human readable description of the label | |
UL | The UL, or end-swapped UUID of thsi label | |
Mask | The mask of bits that can change in this label | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_BASIC | ( | Name, | |||
Detail, | |||||
UL, | |||||
Size, | |||||
Endian | ) | { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_BASIC - Use to define a "Basic" type.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Size | The number of bytes used to store this type (must be > 0) | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Endian | "true" if this type gets endian swapped on reading/writing on a little-endian platform |
#define MXFLIB_TYPE_BASIC_REF | ( | Name, | |||
Detail, | |||||
UL, | |||||
Size, | |||||
Endian, | |||||
RefType, | |||||
RefTarget | ) | { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_BASIC_REF - Use to define a "Basic" type that is a reference source or target.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Size | The number of bytes used to store this type (must be > 0) | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Endian | "true" if this type gets endian swapped on reading/writing on a little-endian platform | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target |
#define MXFLIB_TYPE_BASIC_REF_SYM | ( | Name, | |||
Detail, | |||||
UL, | |||||
Size, | |||||
Endian, | |||||
RefType, | |||||
RefTarget, | |||||
Sym | ) | { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_BASIC_REF_SYM - Use to define a "Basic" type that is a reference source or target and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Size | The number of bytes used to store this type (must be > 0) | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Endian | "true" if this type gets endian swapped on reading/writing on a little-endian platform | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_BASIC_SYM | ( | Name, | |||
Detail, | |||||
UL, | |||||
Size, | |||||
Endian, | |||||
Sym | ) | { TypeBasic, Name, Detail, "", UL, "", Size, Endian, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_BASIC_SYM - Use to define a "Basic" type and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Size | The number of bytes used to store this type (must be > 0) | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Endian | "true" if this type gets endian swapped on reading/writing on a little-endian platform | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_COMPOUND | ( | Name, | |||
Detail, | |||||
UL | ) | { TypeCompound, Name, Detail, "", UL, "", 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_COMPOUND - Use to start the definition of a "Compound" type.
Name | The name of the type being defined | |
Detail | A human readable description of the type |
#define MXFLIB_TYPE_COMPOUND_END |
MXFLIB_TYPE_COMPOUND_END - Use to end definition of a "Compound" type.
#define MXFLIB_TYPE_COMPOUND_ITEM | ( | Name, | |||
Detail, | |||||
Type, | |||||
UL, | |||||
Size | ) | { TypeSub, Name, Detail, Type, UL, "", Size, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_COMPOUND_ITEM - Use to define an item within the current "Compound" type.
Name | The name of the item being defined | |
Detail | A human readable description of the item | |
Type | The type of this item within the compound | |
UL | The UL, or endian-swapped UUID, for this item (or "" to force one to be generated) | |
Size | If non-zero this fixes the number of entries in a variable-length array |
#define MXFLIB_TYPE_COMPOUND_SYM | ( | Name, | |||
Detail, | |||||
UL, | |||||
Sym | ) | { TypeCompound, Name, Detail, "", UL, "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_COMPOUND_SYM - Use to start the definition of a "Compound" type and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_END { TypeNULL, "", "", "", "", "", 0, false, false, TypeRefUndefined, NULL, NULL } }; |
MXFLIB_TYPE_END - Use to end a type definition block.
#define MXFLIB_TYPE_ENUM | ( | Name, | |||
Detail, | |||||
Type, | |||||
UL | ) | { TypeEnum, Name, Detail, Type, UL, "", 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_ENUM - Use to start the definition of an "Enumeration" type.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Type | The type of the values in this enumeration |
#define MXFLIB_TYPE_ENUM_END |
MXFLIB_TYPE_ENUM_END - Use to end definition of a "Enumeration" type.
#define MXFLIB_TYPE_ENUM_SYM | ( | Name, | |||
Detail, | |||||
Type, | |||||
UL, | |||||
Sym | ) | { TypeEnum, Name, Detail, Type, UL, "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_ENUM_SYM - Use to start the definition of a "Enumeration" type and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Type | The type of the values in this enumeration | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_ENUM_VALUE | ( | Name, | |||
Detail, | |||||
Value | ) | { TypeSub, Name, Detail, "", "", Value, 0, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_ENUM_VALUE - Use to define a value for the current "Enumeration" type.
Name | The name of the value being defined | |
Detail | A human readable description of the value | |
Value | The value being defined |
#define MXFLIB_TYPE_INTERPRETATION | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Size | ) | { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_INTERPRETATION - Use to define an "Interpretation" type.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type that this is an interpretation of | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Size | If non-zero this fixes the number of entries in the variable-length base array |
#define MXFLIB_TYPE_INTERPRETATION_REF | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Size, | |||||
RefType, | |||||
RefTarget | ) | { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_INTERPRETATION_REF - Use to define an "Interpretation" type that is a reference source or target.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type that this is an interpretation of | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Size | If non-zero this fixes the number of entries in the variable-length base array | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target |
#define MXFLIB_TYPE_INTERPRETATION_REF_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Size, | |||||
RefType, | |||||
RefTarget, | |||||
Sym | ) | { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_INTERPRETATION_REF_SYM - Use to define an "Interpretation" type that is a reference source or target and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type that this is an interpretation of | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Size | If non-zero this fixes the number of entries in the variable-length base array | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_INTERPRETATION_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
Size, | |||||
Sym | ) | { TypeInterpretation, Name, Detail, Base, UL, "", Size, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_INTERPRETATION_SYM - Use to define an "Interpretation" type and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type that this is an interpretation of | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
Size | If non-zero this fixes the number of entries in the variable-length base array | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_MULTIPLE | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
IsBatch, | |||||
Size | ) | { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, TypeRefUndefined, NULL, NULL }, |
MXFLIB_TYPE_MULTIPLE - Use to define a "Multiple" type.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type of which this is a multiple | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
IsBatch | "true" is this type has an 8-byte Count-and-Size header | |
Size | If non-zero this fixes the number of entries, if zero the size is variable |
#define MXFLIB_TYPE_MULTIPLE_REF | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
IsBatch, | |||||
Size, | |||||
RefType, | |||||
RefTarget | ) | { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, RefType, RefTarget, NULL }, |
MXFLIB_TYPE_MULTIPLE_REF - Use to define a "Multiple" type that is a reference source or target.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type of which this is a multiple | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
IsBatch | "true" is this type has an 8-byte Count-and-Size header | |
Size | If non-zero this fixes the number of entries, if zero the size is variable | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target |
#define MXFLIB_TYPE_MULTIPLE_REF_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
IsBatch, | |||||
Size, | |||||
RefType, | |||||
RefTarget, | |||||
Sym | ) | { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, RefType, RefTarget, Sym }, |
MXFLIB_TYPE_MULTIPLE_REF_SYM - Use to define a "Multiple" type that is a reference source or target and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type of which this is a multiple | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
IsBatch | "true" is this type has an 8-byte Count-and-Size header | |
Size | If non-zero this fixes the number of entries, if zero the size is variable | |
RefType | The reference type (RefWeak, RefStrong or RefTarget) | |
RefTarget | The type of the reference target | |
Sym | The name of the symbol space for this type |
#define MXFLIB_TYPE_MULTIPLE_SYM | ( | Name, | |||
Detail, | |||||
Base, | |||||
UL, | |||||
IsBatch, | |||||
Size, | |||||
Sym | ) | { TypeMultiple, Name, Detail, Base, UL, "", Size, false, IsBatch, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_MULTIPLE_SYM - Use to define a "Multiple" type and override the default symbol space.
Name | The name of the type being defined | |
Detail | A human readable description of the type | |
Base | The type of which this is a multiple | |
UL | The UL, or endian-swapped UUID, for this type (or "" to force one to be generated) | |
IsBatch | "true" is this type has an 8-byte Count-and-Size header | |
Size | If non-zero this fixes the number of entries, if zero the size is variable | |
Sym | The name of the symbol space for this type |
MXFLIB_TYPE_START - Use to start a type definition block.
#define MXFLIB_TYPE_START_SYM | ( | Name, | |||
Sym | ) | const ConstTypeRecord Name[] = { { TypeSymbolSpace, "", "", "", "", "", 0, false, false, TypeRefUndefined, NULL, Sym }, |
MXFLIB_TYPE_START_SYM - Use to start a type definition block and define a default symbol space.