CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
DbProxyEntity.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, 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-2022 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
25
26
27#ifndef _OD_DB_PROXY_ENTITY_
28#define _OD_DB_PROXY_ENTITY_
29
30#include "TD_PackPush.h"
31
32#include "DbEntity.h"
33#include "IdArrays.h"
34#include "DwgDeclareMembers.h"
35
52{
53public:
55
57
59 {
60 kNoMetafile = 0, // No bounding box or graphics (R13 drawing files only)
61 kBoundingBox = 1, // Bounding Box
62 kFullGraphics = 2 // Full Graphics
63 };
64
79
80 virtual OdDbObjectPtr subDeepClone(OdDbIdMapping& ownerIdMap, OdDbObject*, bool bPrimary) const ODRX_OVERRIDE;
81
82 virtual OdDbObjectPtr subWblockClone(OdDbIdMapping& ownerIdMap, OdDbObject*, bool bPrimary) const ODRX_OVERRIDE;
83
84 /* Replace OdRxObjectPtrArray */
85
87 OdRxObjectPtrArray& entitySet) const ODRX_OVERRIDE;
88
89 /*
90 virtual bool subGetGeomExtents(OdGeExtents3d& extents) const;
91 */
92
93 enum
94 {
95 kNoOperation = 0x000,
96 kEraseAllowed = 0x001,
97 kTransformAllowed = 0x002,
98 kColorChangeAllowed = 0x004,
99 kLayerChangeAllowed = 0x008,
100 kLinetypeChangeAllowed = 0x010,
101 kLinetypeScaleChangeAllowed = 0x020,
102 kVisibilityChangeAllowed = 0x040,
103 kCloningAllowed = 0x080,
104 kLineWeightChangeAllowed = 0x100,
105 kPlotStyleNameChangeAllowed = 0x200,
106 kDisableProxyWarning = 0x400,
107 kMaterialChangeAllowed = 0x800,
108 kAllButCloningAllowed = 0xB7F,
109 kAllAllowedBits = 0xBFF
110 };
111
139 virtual int proxyFlags() const;
140
144 bool eraseAllowed() const { return GETBIT(proxyFlags(), kEraseAllowed); }
148 bool transformAllowed() const { return GETBIT(proxyFlags(), kTransformAllowed); }
152 bool colorChangeAllowed() const { return GETBIT(proxyFlags(), kColorChangeAllowed); }
156 bool layerChangeAllowed() const { return GETBIT(proxyFlags(), kLayerChangeAllowed); }
160 bool linetypeChangeAllowed() const { return GETBIT(proxyFlags(), kLinetypeChangeAllowed); }
164 bool linetypeScaleChangeAllowed() const { return GETBIT(proxyFlags(), kLinetypeScaleChangeAllowed); }
168 bool visibilityChangeAllowed() const { return GETBIT(proxyFlags(), kVisibilityChangeAllowed); }
172 bool lineWeightChangeAllowed() const { return GETBIT(proxyFlags(), kLineWeightChangeAllowed); }
176 bool plotStyleNameChangeAllowed() const { return GETBIT(proxyFlags(), kPlotStyleNameChangeAllowed); }
180 bool materialChangeAllowed() const { return GETBIT(proxyFlags(), kMaterialChangeAllowed); }
184 bool cloningAllowed() const { return GETBIT(proxyFlags(), kCloningAllowed); }
204 bool allButCloningAllowed() const { return (proxyFlags() & kAllAllowedBits) == (kAllAllowedBits ^ kAllButCloningAllowed); }
226 bool allOperationsAllowed() const { return (proxyFlags() & kAllAllowedBits) == kAllAllowedBits; }
227
231 bool isR13FormatProxy() const { return GETBIT(proxyFlags(), 0x8000); }
232
237
241 virtual OdString originalDxfName() const;
242
247
253 virtual void getReferences(
254 OdTypedIdsArray& objectIds) const;
255
257 OdDbDwgFiler* pFiler);
258
259 virtual void dwgOutFields(
260 OdDbDwgFiler* pFiler) const;
261
263 OdDbDxfFiler* pFiler);
264
265 virtual void dxfOutFields(
266 OdDbDxfFiler* pFiler) const;
267
269 OdDbDxfFiler* pFiler);
270
272 const OdGeMatrix3d& xfm) ODRX_OVERRIDE;
273
282 const OdCmColor &color,
283 bool doSubents = true);
288 OdUInt16 colorIndex,
289 bool doSubents = true);
294 OdDbObjectId colorId,
295 bool doSubents = true);
300 const OdString& plotStyleName,
301 bool doSubents = true);
306 OdDb::PlotStyleNameType plotStyleNameType,
308 bool doSubents = true);
313 const OdString& layerName,
314 bool doSubents = true,
315 bool allowHiddenLayer = false);
320 OdDbObjectId layerId,
321 bool doSubents = true,
322 bool allowHiddenLayer = false);
327 const OdString& linetypeName,
328 bool doSubents = true);
333 OdDbObjectId linetypeID,
334 bool doSubents = true);
339 double linetypeScale,
340 bool doSubents = true);
345 OdDb::Visibility visibility,
346 bool doSubents = true);
351 OdDb::LineWeight lineWeight,
352 bool doSubents = true);
353
358 const OdString& materialName,
359 bool doSubents = true);
361 OdDbObjectId materialID,
362 bool doSubents = true);
363
365 bool erasing);
366};
367
372
373#include "TD_PackPop.h"
374
375#endif
#define DBIO_EXPORT
Definition: DbExport.h:80
OdSmartPtr< OdDbProxyEntity > OdDbProxyEntityPtr
unsigned short OdUInt16
#define ODRX_OVERRIDE
OdResult
Definition: OdResult.h:29
#define GETBIT(flags, bit)
Definition: OdaDefs.h:517
static TOOLKIT_EXPORT_STATIC const OdDbObjectId kNull
Definition: DbObjectId.h:110
bool lineWeightChangeAllowed() const
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm) ODRX_OVERRIDE
virtual OdResult setColor(const OdCmColor &color, bool doSubents=true)
bool transformAllowed() const
virtual OdResult setPlotStyleName(OdDb::PlotStyleNameType plotStyleNameType, OdDbObjectId newId=OdDbObjectId::kNull, bool doSubents=true)
virtual OdResult subSetVisibility(OdDb::Visibility visibility, bool doSubents=true)
bool colorChangeAllowed() const
virtual OdResult setLayer(OdDbObjectId layerId, bool doSubents=true, bool allowHiddenLayer=false)
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const ODRX_OVERRIDE
virtual OdString originalDxfName() const
virtual OdResult setMaterial(OdDbObjectId materialID, bool doSubents=true)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
virtual OdResult setLayer(const OdString &layerName, bool doSubents=true, bool allowHiddenLayer=false)
bool plotStyleNameChangeAllowed() const
virtual int proxyFlags() const
virtual OdResult setPlotStyleName(const OdString &plotStyleName, bool doSubents=true)
virtual OdResult setLinetype(const OdString &linetypeName, bool doSubents=true)
bool layerChangeAllowed() const
virtual OdResult setLinetypeScale(double linetypeScale, bool doSubents=true)
virtual OdString applicationDescription() const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
virtual OdResult setLinetype(OdDbObjectId linetypeID, bool doSubents=true)
virtual OdDbProxyEntity::GraphicsMetafileType graphicsMetafileType() const
virtual OdResult setColorIndex(OdUInt16 colorIndex, bool doSubents=true)
bool isR13FormatProxy() const
virtual OdResult setMaterial(const OdString &materialName, bool doSubents=true)
virtual OdResult setColorId(OdDbObjectId colorId, bool doSubents=true)
bool linetypeChangeAllowed() const
bool allButCloningAllowed() const
virtual OdDbObjectPtr subWblockClone(OdDbIdMapping &ownerIdMap, OdDbObject *, bool bPrimary) const ODRX_OVERRIDE
bool eraseAllowed() const
virtual OdDbObjectPtr subDeepClone(OdDbIdMapping &ownerIdMap, OdDbObject *, bool bPrimary) const ODRX_OVERRIDE
bool cloningAllowed() const
virtual OdResult setLineWeight(OdDb::LineWeight lineWeight, bool doSubents=true)
bool linetypeScaleChangeAllowed() const
OdResult dxfIn(OdDbDxfFiler *pFiler)
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
bool allOperationsAllowed() const
bool materialChangeAllowed() const
virtual OdString originalClassName() const
virtual void getReferences(OdTypedIdsArray &objectIds) const
virtual OdResult subErase(bool erasing)
DWGMAP_DECLARE_MEMBERS(OdDbProxyEntity)
bool visibilityChangeAllowed() const
PlotStyleNameType
Definition: OdaDefs.h:417
LineWeight
Definition: OdaDefs.h:386
Visibility
Definition: DbObject.h:146