CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
DbDynBlockReference.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24#ifndef _DbDynBlock_h_Included_
25#define _DbDynBlock_h_Included_
26
27
28#include "DbEvalGraph.h"
29#include "TD_PackPush.h"
30
31// Forward class declarations
32
36class OdDbDynBlockReferencePropertyImpl;
37class OdDbDynBlockReferenceImpl;
41class OdDbDynBlockTableRecordImpl;
44
54{
55public:
56
57 enum UnitsType {
58 kNoUnits = 0, // No units defined.
59 kAngular = 1, // Angle.
60 kDistance = 2, // Distance.
61 kArea = 3 // 2D area.
62 };
63
66
71
74
79
86
91
95 bool readOnly() const;
96
97
101 bool show() const;
102
107
112
130
131
136 void getAllowedValues(OdResBufArray& allowedValues);
137
142
150
155
163
164private:
167};
168
177
184{
185// FELIX_CHANGE_BEGIN
186 // need to make BomUtil a friend class since it uses a private function
187 // which became public in a newer ODA version
188 friend class BomUtil;
189// FELIX_CHANGE_END
191public:
192
197
202
204
215 static bool isDynamicBlock (const OdDbObjectId& blockTableRecordId);
216
224 bool isDynamicBlock () const;
225
230
231
241
246
256 bool convertToStaticBlock (const OdString& newBlockName);
257
265
270
272private:
274 OdDbDynBlockReferenceImpl* m_pImpl;
276};
277
283{
285public:
288
292 bool isDynamicBlock() const;
293
299 static bool isDynamicBlock(const OdDbBlockTableRecord* pBlockTableRecord);
300
305
311 void getAnonymousBlockIds(OdDbObjectIdArray& anonymousIds) const;
312
317 void updateAnonymousBlock(const OdDbObjectId& anonymousId) const; //FELIX_CHANGE DESKTOP-292430
318private:
320 OdDbDynBlockTableRecordImpl* m_pImpl;
321};
322
323#include "TD_PackPop.h"
324
325#endif
OdSmartPtr< OdResBuf > OdResBufPtr
Definition DbDatabase.h:105
OdSmartPtr< OdDbBlockParameter > OdDbBlockParameterPtr
OdArray< OdDbDynBlockReferencePropertyPtr > OdDbDynBlockReferencePropertyArray
OdSmartPtr< OdDbDynBlockReferenceProperty > OdDbDynBlockReferencePropertyPtr
#define DYNBLOCKS_EXPORT
Definition DbEvalGraph.h:91
unsigned long OdDbEvalNodeId
Definition DbEvalGraph.h:60
OdArray< OdResBufPtr > OdResBufArray
Definition DbEvalGraph.h:77
OdArray< OdDbObjectId, OdClrMemAllocator< OdDbObjectId > > OdDbObjectIdArray
Definition IdArrays.h:53
static bool isDynamicBlock(const OdDbObjectId &blockTableRecordId)
OdDbDynBlockReference(const OdDbObjectId &blockRefId)
bool isDynamicBlock() const
OdDbObjectId dynamicBlockTableRecord() const
OdDbObjectId blockId() const
bool convertToStaticBlock(const OdString &newBlockName)
virtual ~OdDbDynBlockReference()
void getBlockProperties(OdDbDynBlockReferencePropertyArray &properties) const
OdDbObjectId anonymousBlockTableRecord() const
OdDbBlockRepresentationContext * getRepresentationContext() const
OdDbDynBlockReference(OdDbBlockReference *pRef)
OdDbDynBlockReferenceProperty & operator=(const OdDbDynBlockReferenceProperty &other)
OdDbObjectId blockId() const
void getAllowedValues(OdResBufArray &allowedValues)
OdString propertyName() const
OdResBuf::ValueType propertyType() const
OdDbBlockParameterPtr getParameter()
bool visibleInCurrentVisibilityState() const
UnitsType unitsType() const
OdString description() const
bool setValue(const OdResBufPtr &value)
OdDbDynBlockReferenceProperty(const OdDbDynBlockReferenceProperty &other)
void getDescriptor(OdDbEvalNodeId &parameterId, OdDbBlkParamPropertyDescriptor &pDescriptor)
OdResBufPtr value() const
void updateAnonymousBlocks() const
bool isDynamicBlock() const
void getAnonymousBlockIds(OdDbObjectIdArray &anonymousIds) const
OdDbObjectId blockTableRecordId() const
static bool isDynamicBlock(const OdDbBlockTableRecord *pBlockTableRecord)
void updateAnonymousBlock(const OdDbObjectId &anonymousId) const
OdDbDynBlockTableRecord(OdDbObjectId blockId)
ODRX_HEAP_OPERATORS()