24 #ifndef __DOTS_INTERNAL_TYPE_REPOSITORY_H__
25 #define __DOTS_INTERNAL_TYPE_REPOSITORY_H__
30 #include <Safir/Dob/Typesystem/LanguageInterfaceDefs.h>
31 #include <Safir/Utilities/Internal/Id.h>
56 virtual const char*
FileName()
const=0;
62 virtual const char*
Summary()
const=0;
74 virtual const char*
GetName()
const=0;
87 virtual DotsC_MemberIndex
GetMemberIndex(
const std::string& memberName)
const=0;
107 virtual const char*
FileName()
const=0;
113 virtual const char*
Summary()
const=0;
119 virtual DotsC_TypeId
GetTypeId()
const=0;
125 virtual const char*
GetName()
const=0;
144 virtual const char*
Summary()
const=0;
150 virtual const char*
GetName()
const=0;
169 virtual DotsC_TypeId
GetTypeId()
const=0;
181 virtual DotsC_MemberType
GetKeyType()
const=0;
253 virtual std::pair<const char*, DotsC_Int32>
GetObjectValue(
int index)
const=0;
260 virtual std::pair<const char*, DotsC_Int32>
GetBinaryValue(
int index)
const=0;
267 virtual std::pair<DotsC_Int64, const char*>
GetHashedValue(
int index)
const=0;
274 virtual DotsC_Int32
GetInt32Key(
int index)
const=0;
281 virtual DotsC_Int64
GetInt64Key(
int index)
const=0;
295 virtual std::pair<DotsC_Int64, const char*>
GetHashedKey(
int index)
const=0;
322 virtual const char*
FileName()
const=0;
328 virtual const char*
Summary()
const=0;
334 virtual DotsC_TypeId
GetTypeId()
const=0;
340 virtual const char*
GetName()
const=0;
359 virtual const char*
GetValueName(DotsC_EnumerationValue val)
const=0;
379 virtual const char*
Summary()
const=0;
386 virtual DotsC_TypeId
GetTypeId()
const=0;
392 virtual const char*
GetName()
const=0;
410 virtual DotsC_MemberType
GetKeyType()
const=0;
467 virtual std::pair<DotsC_MemberIndex, DotsC_Int32>
GetMemberReference(
int depth)
const=0;
480 virtual const char*
FileName()
const=0;
486 virtual const char*
Summary()
const=0;
518 virtual const char*
Summary()
const=0;
524 virtual const char*
GetName()
const=0;
570 virtual const char*
FileName()
const=0;
576 virtual const char*
Summary()
const=0;
582 virtual DotsC_TypeId
GetTypeId()
const=0;
588 virtual const char*
GetName()
const=0;
632 virtual DotsC_MemberIndex
GetMemberIndex(
const std::string& memberName)
const=0;
670 virtual void GetPropertyIds(std::set<DotsC_TypeId>& propertyIds)
const=0;
virtual int GetNumberOfOwnMembers() const =0
Get the number of members defined by this class.
virtual const char * GetName() const =0
Get qualified name of the property type.
virtual int GetNumberOfInheritedMembers() const =0
Get the number of inherited members.
virtual DotsC_CollectionType GetCollectionType() const =0
Get the collection type of this member.
virtual std::pair< DotsC_Int64, const char * > GetHashedValue(int index) const =0
Get hashed parameter value.
virtual DotsC_CollectionType GetCollectionType() const =0
Get the collection type of this parameter.
virtual const char * Summary() const =0
Get a summary about this exception.
virtual const char * GetStringKey(int index) const =0
Get string key.
MemberMappingDescription MemberMappingDescriptionType
Definition: TypeRepository.h:802
virtual DotsC_Int32 GetInt32Value(int index) const =0
Get int32 parameter value.
This namespace contains all the functionality and definitions of the SAFIR SDK.
Definition: Backdoor.h:30
virtual DotsC_MemberIndex GetMemberIndex(const std::string &memberName) const =0
Get index of a named member.
Description of an enumeration type.
Definition: TypeRepository.h:315
The TypeRepository class is the baseclass of any TypeRepository implementation.
Definition: TypeRepository.h:697
Description of a parameter.
Definition: TypeRepository.h:137
virtual std::pair< const char *, DotsC_Int32 > GetObjectValue(int index) const =0
Get object parameter value.
ParameterDescription ParameterDescriptionType
Definition: TypeRepository.h:800
virtual int GetIndexOfValue(const std::string &valueName) const =0
Get index (ordinal) for a named enumeration value.
virtual DotsC_TypeId GetTypeId() const =0
If this parameter has MemberType Enumeration or Object, the specific typeId of that type can be retri...
virtual void GetPropertyIds(std::set< DotsC_TypeId > &propertyIds) const =0
Get a set of all properties in this class.
virtual const ClassDescription * GetDescendant(int index) const =0
Get descendant class.
TypeRepository RepositoryType
Definition: TypeRepository.h:795
virtual DotsC_TypeId GetKeyTypeId() const =0
If this parameter has CollectionType Dictionary and KeyType Enumeration, the specific typeId of that ...
virtual void GetAllExceptionTypeIds(std::set< DotsC_TypeId > &typeIds) const =0
Get a set of all typeIds that represent exception types.
Description of a property type.
Definition: TypeRepository.h:49
virtual int MemberReferenceDepth() const =0
If this property mapping is of type MappedToMember, use GetMappingKind() to check that...
virtual DotsC_MemberType GetKeyType() const =0
Get key type of this parameter.
virtual const MemberDescription * GetMember(DotsC_MemberIndex index) const =0
Get a member description.
CreateRoutineDescription CreateRoutineDescriptionType
Definition: TypeRepository.h:804
virtual const char * FileName() const =0
Get dou file path as a string.
virtual const char * Summary() const =0
Get a summary about this class.
virtual int GetNumberOfMembers() const =0
Get the number of members contained by this property.
virtual const char * GetName() const =0
Get qualified name of the exception type.
Definition: TypeRepository.h:42
virtual const MemberDescription * GetDefaultValueMember(int index) const =0
Get member description for a default value.
virtual std::pair< DotsC_MemberIndex, DotsC_Int32 > GetMemberReference(int depth) const =0
If this property mapping is of type MappedToMember, use GetMappingKind() to check that...
virtual DotsC_Int32 GetInt32Key(int index) const =0
Get int32 or enum key.
virtual const char * FileName() const =0
Get dou file path as a string.
virtual int GetNumberOfValues() const =0
Get the number of values this parameter holds.
virtual void GetAllEnumTypeIds(std::set< DotsC_TypeId > &typeIds) const =0
Get a set of all typeIds that represent enumeration types.
virtual const ClassDescription * GetClass(DotsC_TypeId typeId) const =0
Get class description by typeId.
virtual std::pair< const char *, DotsC_Int32 > GetBinaryValue(int index) const =0
Get binary parameter value.
ExceptionDescription ExceptionDescriptionType
Definition: TypeRepository.h:799
virtual const char * GetName() const =0
Get qualified name of the class type.
virtual const char * GetName() const =0
Get the name of the parameter.
virtual int GetNumberOfOwnParameters() const =0
Get the number of parameters defined by this class.
virtual std::pair< const ParameterDescription *, int > GetDefaultValue(int index) const =0
Get parameter description for a default value.
virtual const char * FileName() const =0
Get dou file path as a string.
virtual const ParameterDescription * GetParameter(DotsC_ParameterIndex index) const =0
Get parameter description.
virtual int GetIndexByUnifiedKey(DotsC_Int64 unifiedKey) const =0
GetIndexByUnifiedKey - Get corresponding index to a dictionary key.
virtual const MemberMappingDescription * GetMemberMapping(int propertyMemberIndex) const =0
Get member mapping for a specific property member.
ClassDescription ClassDescriptionType
Definition: TypeRepository.h:796
virtual std::pair< const ParameterDescription *, int > GetParameter() const =0
If this property mapping is of type MappedToParameter, use GetMappingKind() to check that...
virtual int GetNumberOfExceptions() const =0
Get number of exception types.
Description of a create routine.
Definition: TypeRepository.h:511
virtual int GetNumberOfEnums() const =0
Get number of enumeration types.
virtual int GetNumberOfClasses() const =0
Get number of class types.
virtual const MemberDescription * GetInParameterMember(int index) const =0
Get member description for an in parameter.
virtual DotsC_TypeId GetTypeId() const =0
Get the typeId of this exception.
virtual int GetNumberOfInheritedParameters() const =0
Get the number of inherited parameters.
virtual DotsC_TypeId GetTypeId() const =0
Get the typeId of this class.
virtual const MemberDescription * GetMember(DotsC_MemberIndex index) const =0
Get a member description.
PropertyMappingDescription PropertyMappingDescriptionType
Definition: TypeRepository.h:803
Description of an exception type.
Definition: TypeRepository.h:100
virtual const ClassDescription * GetBaseClass() const =0
Get the base class description of this class.
virtual const ExceptionDescription * GetException(DotsC_TypeId typeId) const =0
Get exception description by typeId.
virtual const std::map< DotsC_Int64, int > & UnifiedKeyToIndexMap() const =0
UnifiedKeyToIndexMap - FOR INTERNAL USAGE ONLY.
virtual const char * FileName() const =0
Get dou file path as a string.
virtual DotsC_TypeId GetTypeId() const =0
Get the typeId of this property.
virtual DotsC_TypeId GetTypeId() const =0
Get the typeId of this enumeration.
virtual int GetArraySize() const =0
Get the array size of this member.
virtual const PropertyDescription * GetProperty() const =0
Get the property this property mapping refers to.
virtual const EnumDescription * GetEnum(DotsC_TypeId typeId) const =0
Get enumeration description by typeId.
virtual int GetNumberOfProperties() const =0
Get number of property types.
virtual const char * GetValueName(DotsC_EnumerationValue val) const =0
Get name of a enumeration value.
virtual const char * Summary() const =0
Get a summary about this parameter.
Description of a class type.
Definition: TypeRepository.h:563
Description of a property mapping.
Definition: TypeRepository.h:473
virtual DotsC_MemberType GetKeyType() const =0
Get key type of this member.
virtual void GetAllPropertyTypeIds(std::set< DotsC_TypeId > &typeIds) const =0
Get a set of all typeIds that represent property types.
Description of a member.
Definition: TypeRepository.h:372
virtual DotsC_MemberType GetMemberType() const =0
Get member type of this parameter value.
virtual void GetAllClassTypeIds(std::set< DotsC_TypeId > &typeIds) const =0
Get a set of all typeIds that represent class types.
virtual int GetNumberOfDefaultValues() const =0
Get number of default values that this create routine will set.
virtual const CreateRoutineDescription * GetCreateRoutine(int index) const =0
Get a create routine description.
virtual DotsC_MemberIndex GetMemberIndex(const std::string &memberName) const =0
Get index of a named member.
virtual bool IsHidden() const =0
Check if this is a normal parameter defined explicitly in a dou-file or if it is a special hidden par...
virtual const ClassDescription * GetClass() const =0
Get the class this property mapping refers to.
virtual const char * Summary() const =0
Get a summary about this member.
virtual std::pair< DotsC_Int64, const char * > GetHashedKey(int index) const =0
Get hashed key.
virtual int GetMaxLength() const =0
If member type is String this method returns the maximum allowed string length.
PropertyDescription PropertyDescriptionType
Definition: TypeRepository.h:798
virtual const char * GetStringValue(int index) const =0
Get string parameter value.
virtual DotsC_TypeId GetCheckSum() const =0
Get checksum of this enum type.
virtual int GetNumberOfCreateRoutines() const =0
Get the number of create routines in this class.
virtual const char * Summary() const =0
Get a summary about this enumeration.
virtual int GetNumberOfInParameters() const =0
Get the number of in parameters for this create routine.
virtual DotsC_Float64 GetFloat64Value(int index) const =0
Get float64 parameter value.
virtual const char * FileName() const =0
Get dou file path as a string.
EnumDescription EnumDescriptionType
Definition: TypeRepository.h:801
virtual const char * Summary() const =0
Get a summary about this create routine.
virtual const char * GetName() const =0
Get create routine name.
virtual DotsC_PropertyMappingKind GetMappingKind() const =0
Get type of property member mapping.
virtual DotsC_MemberType GetMemberType() const =0
Get type of this member.
virtual DotsC_TypeId GetKeyTypeId() const =0
If this member has CollectionType Dictionary and KeyType Enumeration, the specific typeId of that enu...
virtual bool GetBoolValue(int index) const =0
Get bool parameter value.
virtual DotsC_Int64 GetInt64Key(int index) const =0
Get int64 or typeId key.
virtual const PropertyDescription * GetProperty(DotsC_TypeId typeId) const =0
Get property description by typeId.
virtual const char * GetName() const =0
Get qualified name of the enumeration type.
virtual const ExceptionDescription * GetBaseClass() const =0
Get the base class description of this exception.
virtual const char * Summary() const =0
Get a summary about this property.
virtual int GetNumberOfDescendants() const =0
Get the number of classes that inherits from this class.
virtual const char * GetQualifiedName() const =0
Get fully qualified parameter name.
virtual DotsC_Float32 GetFloat32Value(int index) const =0
Get float32 parameter value.
virtual DotsC_Int64 GetInt64Value(int index) const =0
Get int64 parameter value.
Description of a property member mapping.
Definition: TypeRepository.h:436
virtual const char * Summary() const =0
Get a summary about this property mapping.
virtual int GetNumberOfParameters() const =0
Get the total number of parameters contained by this class including inherited parameters.
virtual int GetNumberOfMembers() const =0
Get the total number of members contained by this class including inherited members.
virtual const PropertyMappingDescription * GetPropertyMapping(DotsC_TypeId propertyTypeId, bool &isInherited) const =0
Get property mapping description for a specific property that describes how it is mapped for this cla...
virtual const char * GetName() const =0
Get member name.
MemberDescription MemberDescriptionType
Definition: TypeRepository.h:797
virtual int GetNumberOfValues() const =0
Get number of enumeration values.
virtual DotsC_TypeId GetTypeId() const =0
If this member has MemberType Enumeration or Object, the specific typeId of that type can be retrieve...