API Reference > Auxiliary Classes > AECSmartReference Structure
AECSmartReference Structure
Syntax
C++
struct AECSmartReference { enum Type { eSimple = 0, eBlock = 1, eBlockReference = 2, eXRef = 3 }; Type eType; OdDbObjectId idRef1; OdDbObjectId idRef2; OdUInt8 cUnk1; OdDbHandle hObject; AECBASE_API_STATIC AECSmartReference kNull; };

AECSmartReference.h

AEC Smart reference.

Specifies the location of referenced object. May store reference to simple object, object from block table record, object from block reference or object from xref. 

 

 
Name 
Description 
 
Default constructor. 
 
Name 
Description 
 
Value in front of handle string for XRef reference. 
 
Type of smart reference. 
 
Handle for XRef reference. 
 
Major reference. 
 
Auxiliary reference. 
 
This is kNull, a member of class AECSmartReference. 
 
Name 
Description 
 
Type 
The type of smart reference. 
 
Name 
Description 
 
Creates eSimple or eBlock reference for AECDbBlockRefPath (idBlockReference should be id of OdDbBlockReference ) 
 
Creates a simple reference (idObj should be from the database where the reference will be used ) 
 
Creates an eBlockReference or eXRef reference with a path (idPath should be from the database where the reference will be used (not an XREF one!), idObj can be in the same database (eBlockReference) or in XREF ) Returns null reference, if the the path and the object do not match 
 
Returns AECDbBlockRefPath object id, if the path is present 
 
Returns object ID of referenced object. Returns null id, if target id can`t be obtained (e.g. XREF was not loaded ) 
 
Returns product of blockTransform()s of all block references in this path. 
 
Returns whether this reference is null regardless of type. 
 
Returns true, if this reference points to a valid object and all intermediate references are valid. 
 
Name 
Description 
 
!= 
This is !=, a member of class AECSmartReference. 
 
== 
This is ==, a member of class AECSmartReference. 
Copyright © 2002 – 2020. Open Design Alliance. All rights reserved.