Classes | Macros | Typedefs | Enumerations | Functions
ECSchema.h File Reference
#include <ECObjects/ECInstance.h>
#include <ECObjects/ECObjects.h>
#include <ECObjects/ECEnabler.h>
#include <Bentley/RefCounted.h>
#include <Bentley/bvector.h>
#include <Bentley/bmap.h>
#include <Bentley/bset.h>

Go to the source code of this file.

Classes

struct  ECNameValidation
 Handles validation, encoding, and decoding of names for ECSchemas, ECClasses, and ECProperties. More...
 
struct  ECTypeDescriptor
 Used to represent the type of an ECProperty. More...
 
struct  IECCustomAttributeContainer
 Interface adopted by a container object which can hold custom attributes, such as those associated with an ECProperty, ECSchema, or ECClass. More...
 
struct  ECCustomAttributeInstanceIterable
 Iterates over the custom attribute instances in a container. More...
 
struct  ECCustomAttributeInstanceIterable::IteratorState
 
struct  ECCustomAttributeInstanceIterable::const_iterator
 Iterator for the custom attribute instances. More...
 
struct  IECTypeAdapterContext
 Base class for an object which provides the context for an IECTypeAdapter. More...
 
struct  IECTypeAdapter
 Base class for an object which adapts the internal value of an ECProperty to a user-friendly string representation. More...
 
struct  ECProperty
 The in-memory representation of an ECProperty as defined by ECSchemaXML. More...
 
struct  PrimitiveECProperty
 The in-memory representation of an ECProperty as defined by ECSchemaXML. More...
 
struct  StructECProperty
 The in-memory representation of an ECProperty as defined by ECSchemaXML. More...
 
struct  ArrayECProperty
 The in-memory representation of an ECProperty as defined by ECSchemaXML. More...
 
struct  ECPropertyIterable
 Container holding ECProperties that supports STL like iteration. More...
 
struct  ECPropertyIterable::IteratorState
 
struct  ECPropertyIterable::const_iterator
 Iterator over the properties. More...
 
struct  ECClass
 The in-memory representation of an ECClass as defined by ECSchemaXML. More...
 
struct  RelationshipCardinality
 This class describes the cardinality of a relationship. More...
 
struct  ECRelationshipConstraint
 The in-memory representation of the source and target constraints for an ECRelationshipClass as defined by ECSchemaXML. More...
 
struct  ECRelationshipClass
 The in-memory representation of a relationship class as defined by ECSchemaXML. More...
 
struct  SchemaKey
 Fully defines a schema with its name, major and minor versions, and a checksum. More...
 
struct  SchemaKeyMatch< MatchType >
 Determines whether two SchemaKeys match. More...
 
struct  SchemaKeyLessThan< MatchType >
 Determines whether one SchemaKey is less than the other. More...
 
struct  SchemaKeyMatchPredicate
 
struct  SchemaNameClassNamePair
 
struct  QualifiedECAccessor
 Identifies an ECProperty by schema name, class name, and access string. More...
 
struct  SchemaMapExact
 
struct  ECClassContainer
 Supports STL like iterator of classes in a schema. More...
 
struct  ECClassContainer::IteratorState
 
struct  ECClassContainer::const_iterator
 
struct  IStandaloneEnablerLocater
 Interface to find a standalone enabler, typically for an embedded ECStruct in an ECInstance. More...
 
struct  IECSchemaLocater
 Interface implemented by class that provides schema location services. More...
 
struct  ECSchemaCache
 An object that controls the lifetime of a set of ECSchemas. More...
 
struct  ECSchema
 The in-memory representation of a schema as defined by ECSchemaXML. More...
 

Macros

#define DEFAULT_VERSION_MAJOR   1
 
#define DEFAULT_VERSION_MINOR   0
 

Typedefs

typedef int64_t ECClassId
 
typedef int64_t ECPropertyId
 
typedef int64_t ECSchemaId
 
typedef bvector< IECInstancePtr > ECCustomAttributeCollection
 
typedef RefCountedPtr
< IECTypeAdapterContext
IECTypeAdapterContextPtr
 
typedef bvector< ECClassP > ECBaseClassesList
 
typedef bvector< ECClassP > ECDerivedClassesList
 
typedef bvector< ECClassP > ECConstraintClassesList
 
typedef RefCountedPtr
< StandaloneECEnabler
StandaloneECEnablerPtr
 
typedef StandaloneECEnablerStandaloneECEnablerP
 
typedef RefCountedPtr< ECSchemaECSchemaPtr
 
typedef RefCountedPtr
< SearchPathSchemaFileLocater > 
SearchPathSchemaFileLocaterPtr
 
typedef RefCountedPtr
< ECRelationshipClass
ECRelationshipClassPtr
 
typedef bmap< SchemaKey,
ECSchemaPtr
SchemaMap
 
typedef bvector
< QualifiedECAccessor
QualifiedECAccessorList
 
typedef
QualifiedECAccessorList const & 
QualifiedECAccessorListCR
 
typedef SchemaMapExact ECSchemaReferenceList
 
typedef const
ECSchemaReferenceList
ECSchemaReferenceListCR
 
typedef RefCountedPtr
< ECSchemaCache
ECSchemaCachePtr
 
typedef RefCountedPtr
< SupplementalSchemaInfo
SupplementalSchemaInfoPtr
 

Enumerations

enum  OrderIdStorageMode : uint8_t { ORDERIDSTORAGEMODE_None = 0, ORDERIDSTORAGEMODE_ProvidedByPersistence = 1, ORDERIDSTORAGEMODE_ProvidedByClient = 2 }
 Used to define how the relationship OrderId is handled. More...
 
enum  ECRelationshipEnd { ECRelationshipEnd_Source = 0, ECRelationshipEnd_Target }
 Used to define which end of the relationship, source or target. More...
 
enum  ECRelatedInstanceDirection { STRENGTHDIRECTION_Forward = 1, STRENGTHDIRECTION_Backward = 2 }
 Used to describe the direction of a related instance within the context of an IECRelationshipInstance. More...
 
enum  StrengthType { STRENGTHTYPE_Referencing, STRENGTHTYPE_Holding, STRENGTHTYPE_Embedding }
 The various strengths supported on a relationship class. More...
 
enum  SchemaMatchType { SCHEMAMATCHTYPE_Identical = 0, SCHEMAMATCHTYPE_Exact = 1, SCHEMAMATCHTYPE_LatestCompatible = 2, SCHEMAMATCHTYPE_Latest = 3 }
 Defines what sort of match should be used when locating a schema. More...
 

Functions

 EC_TYPEDEFS (QualifiedECAccessor)
 

Macro Definition Documentation

#define DEFAULT_VERSION_MAJOR   1
#define DEFAULT_VERSION_MINOR   0

Function Documentation

EC_TYPEDEFS ( QualifiedECAccessor  )

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.