Classes | Namespaces | Macros | Typedefs
DependencyManagerLinkage.h File Reference
#include <Bentley/RefCounted.h>
#include "ITxnManager.h"
#include "DependencyManagerAppid.h"
#include <map>

Go to the source code of this file.

Classes

struct  DependencyRootFarElementID
 Defines a dependency where the root can be in a different model from the dependent. More...
 
struct  DependencyRootElementID_V
 Defines a dependency and associates a floating-point value with it. More...
 
struct  DependencyRootFarElementID_V
 Defines an ElementID_V reference where the root can be in a different model from the dependent. More...
 
struct  DependencyRootAssocPoint_I
 Defines a dependency tied to a particular point on one or more root elements. More...
 
struct  DependencyRootPath_V
 Defines a dependency where the root can be in a different model from the dependent, including nested reference files where multiple Reference attachment IDs are needed to specify the modelRef that is resolved at runtime. More...
 
struct  DependencyLinkage
 In-memory image of user attribute data in which dependency information is stored. More...
 
struct  dependencyRoot
 Describes a reference from a dependent to a root in a DependencyLinkage. More...
 
struct  DependencyManagerLinkage
 
struct  DependencyManagerLinkage::IRootsChangedCallback
 UserFunction called by DependencyManager::ProcessAffected when a dependent element is affected by changes to root elements. More...
 

Namespaces

 Bentley
 The Bentley namespace contains types defined by the Bentley Library.
 
 Bentley::DgnPlatform
 The DgnPlatform namespace contains types defined by the DgnPlatform.
 

Macros

#define DEPENDENCY_MAX_DATA   40960
 The maximum amount of dependency data, in bytes, that an element can hold, including the LinkageHeader. More...
 
#define DEPENDENCY_MAX_ELEMIDS_(X)   ((DEPENDENCY_MAX_DATA-X)/sizeof(ElementId))
 The maximum number of ElementIDs that an element can hold in dependency data (5120) More...
 
#define DEPENDENCY_MAX_FARELEMIDS_(X)   ((DEPENDENCY_MAX_DATA-X)/sizeof(DependencyRootFarElementID))
 The maximum number of DependencyRootFarElementIDs that an element can hold in dependency data (2560) More...
 
#define DEPENDENCY_MAX_ELEMIDVS_(X)   ((DEPENDENCY_MAX_DATA-X)/sizeof(DependencyRootElementID_V))
 The maximum number of DependencyRootElementID_Vs that an element can hold in dependency data (2560) More...
 
#define DEPENDENCY_MAX_FARELEMIDVS_(X)   ((DEPENDENCY_MAX_DATA-X)/sizeof(DependencyRootFarElementID_V))
 The maximum number of DependencyRootFarElementID_Vs that an element can hold in dependency data (1706) More...
 
#define SIZEOF_ASSOCPOINT   40
 The size of an AssocPoint. More...
 
#define DEPENDENCY_MAX_ASSOCPOINTS_(X)   ((DEPENDENCY_MAX_DATA-X)/SIZEOF_ASSOCPOINT)
 The maximum number of AssocPoints that an element can hold in dependency data (1024) More...
 
#define DEPENDENCY_MAX_ASSOCPOINTIS_(X)   ((DEPENDENCY_MAX_DATA-X)/(SIZEOF_ASSOCPOINT+8))
 The maximum number of AssocPointIs that an element can hold in dependency data (853) More...
 
#define DEPENDENCY_MAX_ELEMIDS   DEPENDENCY_MAX_ELEMIDS_(0)
 
#define DEPENDENCY_MAX_FARELEMIDS   DEPENDENCY_MAX_FARELEMIDS_(0)
 
#define DEPENDENCY_MAX_ELEMIDVS   DEPENDENCY_MAX_ELEMIDVS_(0)
 
#define DEPENDENCY_MAX_FARELEMIDVS   DEPENDENCY_MAX_FARELEMIDVS_(0)
 
#define DEPENDENCY_MAX_ELEMIDS_IN_MODEL   DEPENDENCY_MAX_ELEMIDS_IN_MODEL_(0)
 
#define DEPENDENCY_MAX_ASSOCPOINTS   DEPENDENCY_MAX_ASSOCPOINTS_(0)
 
#define DEPENDENCY_MAX_ASSOCPOINTIS   DEPENDENCY_MAX_ASSOCPOINTIS_(0)
 
#define DEPENDENCY_SOME_DATA   1024
 The amount of data, in bytes, that a DependencyLinkage holds. More...
 
#define DEPENDENCY_SOME_ELEMIDS   (DEPENDENCY_SOME_DATA/sizeof(ElementId))
 The maximum number of ElementIDs that a DependencyLinkage holds (128) More...
 
#define DEPENDENCY_SOME_FARELEMIDS   (DEPENDENCY_SOME_DATA/sizeof(DependencyRootFarElementID))
 The number of DependencyRootFarElementIDs that a DependencyLinkage holds (64) More...
 
#define DEPENDENCY_SOME_ELEMIDVS   (DEPENDENCY_SOME_DATA/sizeof(DependencyRootElementID_V))
 The number of DependencyRootElementID_Vs that a DependencyLinkage holds (64) More...
 
#define DEPENDENCY_SOME_FARELEMIDVS   (DEPENDENCY_SOME_DATA/sizeof(DependencyRootFarElementID_V))
 
#define DEPENDENCY_SOME_ASSOCPOINTS   (DEPENDENCY_SOME_DATA/SIZEOF_ASSOCPOINT)
 The number of AssocPoints that a DependencyLinkage holds (25) More...
 
#define DEPENDENCY_SOME_ASSOCPOINTIS   (DEPENDENCY_SOME_DATA/(SIZEOF_ASSOCPOINT+8))
 The number of AssocPoint_Is that a DependencyLinkage holds (21) More...
 
#define DEPENDENCY_DATA_TYPE_ELEM_ID   0
 Type of root data in DependencyLinkage: ElementId - an element in the same model. More...
 
#define DEPENDENCY_DATA_TYPE_ELEM_ID_V   1
 Type of root data in DependencyLinkage: ElementID_V - an an element in the same model paired with a data value. More...
 
#define DEPENDENCY_DATA_TYPE_ASSOC_POINT   2
 Type of root data in DependencyLinkage: AssocPoint - an associative point on an element in the same or a different model. More...
 
#define DEPENDENCY_DATA_TYPE_ASSOC_POINT_I   3
 Type of root data in DependencyLinkage: AssocPoint_I - an associative point paired with a data value. More...
 
#define DEPENDENCY_DATA_TYPE_FAR_ELEM_ID   4
 Type of root data in DependencyLinkage: FarElementID - an element in the same or a different model. More...
 
#define DEPENDENCY_DATA_TYPE_FAR_ELEM_ID_V   5
 Type of root data in DependencyLinkage: FarElementID_V - an element in the same or a different model, paired with a data value. More...
 
#define DEPENDENCY_DATA_TYPE_PATH_V   6
 Type of root data in DependencyLinkage: Path_V - a path to an element in the same or a different model. Note: You can store only one Path_V per dependency linkage. More...
 
#define DEPENDENCY_ON_COPY_DropDependency   0
 Values for DependencyLinkage.u.f.copyOptions flag: dependency linkage deleted when host element is copies. More...
 
#define DEPENDENCY_ON_COPY_RemapRootsWithinSelection   1
 Values for DependencyLinkage.u.f.copyOptions flag: if roots are also being copied, remap copied dependency to new roots; else set root to INVALID_ELEMENTID. More...
 
#define DEPENDENCY_ON_COPY_DeepCopyRootsAcrossFiles   2
 Values for DependencyLinkage.u.f.copyOptions flag: More...
 
#define DEPENDENCY_ON_COPY_DeepCopyRootsAlways   3
 Values for DependencyLinkage.u.f.copyOptions flag: More...
 
#define DEPENDENCY_STATUS_UNCHANGED   0
 callback argument root change-status values More...
 
#define DEPENDENCY_STATUS_CHANGED   1
 Dependency callback argument change status: Root element was changed in some way. More...
 
#define DEPENDENCY_STATUS_DELETED   2
 Dependency callback argument change status: Root element was deleted. More...
 
#define DEPENDENCY_STATUS_RESOLVED   3
 Dependency callback argument change status: Root element was found. (Far Dependencies only). More...
 
#define DEPENDENCY_STATUS_UNRESOLVED   4
 Dependency callback argument change status: Root element was not found. (Far Dependencies only). More...
 
#define DEPENDENCY_MAX_TARGETS_PER_ROOT   4
 The maximum number of root elements identified by a single entry in the DependencyLinkage::root array. This is normally 1 or 2 (for far references), but can be more if the dependency is an intersection. More...
 

Typedefs

typedef struct
Bentley::DgnPlatform::DependencyRootFarElementID 
DependencyRootFarElementID
 Defines a dependency where the root can be in a different model from the dependent. More...
 
typedef struct
Bentley::DgnPlatform::DependencyRootElementID_V 
DependencyRootElementID_V
 Defines a dependency and associates a floating-point value with it. More...
 
typedef struct
Bentley::DgnPlatform::DependencyRootFarElementID_V 
DependencyRootFarElementID_V
 Defines an ElementID_V reference where the root can be in a different model from the dependent. More...
 
typedef struct
Bentley::DgnPlatform::DependencyRootPath_V 
DependencyRootPath_V
 Defines a dependency where the root can be in a different model from the dependent, including nested reference files where multiple Reference attachment IDs are needed to specify the modelRef that is resolved at runtime. More...
 
typedef struct
Bentley::DgnPlatform::DependencyLinkage 
DependencyLinkage
 In-memory image of user attribute data in which dependency information is stored. More...
 
typedef struct
Bentley::DgnPlatform::dependencyRoot 
DependencyRoot
 Describes a reference from a dependent to a root in a DependencyLinkage. More...
 

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