CFx SDK Documentation  2020SP3
GiTransientManager.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, 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 Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 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 __ODGITRANSIENTMANAGER_H__
25 #define __ODGITRANSIENTMANAGER_H__
26 
27 #include <RxObject.h>
28 #include <Gi/GiExport.h>
29 #include <UInt32Array.h>
30 
31 #include "TD_PackPush.h"
32 
33 class OdGiDrawable;
34 
41 {
42  public:
44 
46  {
47  kOdGiMain = 0,
53  kOdGiDrawingModeCount
54  };
55 
63  virtual bool addTransient(OdGiDrawable *pDrawable,
65  OdInt32 subMode,
66  const OdUInt32Array &viewportIds) = 0;
67 
73  virtual bool eraseTransient(OdGiDrawable *pDrawable,
74  const OdUInt32Array &viewportIds) = 0;
75 
83  OdInt32 subMode,
84  const OdUInt32Array &viewportIds) = 0;
85 
91  virtual void updateTransient(OdGiDrawable *pDrawable,
92  const OdUInt32Array &viewportIds) const = 0;
93 
99  virtual bool addChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent) = 0;
100 
106  virtual bool eraseChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent) = 0;
107 
113  virtual void updateChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent) const = 0;
114 
126  OdInt32 &subMode,
127  const OdUInt32Array &viewportIds) const = 0;
128 };
129 
134 
143 
150 {
151  public:
153 
158  virtual OdGiTransientManager *transientManager(const OdRxObject *pThis) const = 0;
164  virtual void setTransientManager(OdRxObject *pThis, OdGiTransientManager *pManager) = 0;
165 };
166 
171 
172 #include "TD_PackPop.h"
173 
174 #endif // __ODGITRANSIENTMANAGER_H__
OdGiTransientManager::OdGiTransientDrawingMode
OdGiTransientDrawingMode
Definition: GiTransientManager.h:46
OdGiTransientManagerPEPtr
OdSmartPtr< OdGiTransientManagerPE > OdGiTransientManagerPEPtr
Definition: GiTransientManager.h:170
OdGiTransientManager::eraseTransient
virtual bool eraseTransient(OdGiDrawable *pDrawable, const OdUInt32Array &viewportIds)=0
OdRxObject
Definition: RxObject.h:564
odgiSetTransientManager
ODGI_EXPORT void odgiSetTransientManager(OdGiTransientManager *pManager, OdRxObject *pObject)
OdArray< OdUInt32, OdMemoryAllocator< OdUInt32 > >
TD_PackPop.h
RxObject.h
ODGI_EXPORT
#define ODGI_EXPORT
Definition: GiExport.h:35
OdGiTransientManager::kOdGiContrast
@ kOdGiContrast
Definition: GiTransientManager.h:52
OdSmartPtr< OdGiTransientManager >
OdGiTransientManagerPE::setTransientManager
virtual void setTransientManager(OdRxObject *pThis, OdGiTransientManager *pManager)=0
OdGiTransientManager::kOdGiDirectShortTerm
@ kOdGiDirectShortTerm
Definition: GiTransientManager.h:49
OdInt32
int OdInt32
Definition: OdPlatformSettings.h:782
OdGiDrawable
Definition: GiDrawable.h:49
OdGiTransientManager::getFreeSubDrawingMode
virtual OdInt32 getFreeSubDrawingMode(OdGiTransientDrawingMode mode, OdInt32 &subMode, const OdUInt32Array &viewportIds) const =0
TD_PackPush.h
OdGiTransientManager::addChildTransient
virtual bool addChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent)=0
OdGiTransientManager::updateTransient
virtual void updateTransient(OdGiDrawable *pDrawable, const OdUInt32Array &viewportIds) const =0
OdGiTransientManager::kOdGiDirectTopmost
@ kOdGiDirectTopmost
Definition: GiTransientManager.h:51
OdGiTransientManager::eraseChildTransient
virtual bool eraseChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent)=0
GiExport.h
OdGiTransientManagerPE
Definition: GiTransientManager.h:150
OdGiTransientManager::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiTransientManager)
odgiGetTransientManager
ODGI_EXPORT OdGiTransientManager * odgiGetTransientManager(const OdRxObject *pObject)
OdGiTransientManager::eraseTransients
virtual bool eraseTransients(OdGiTransientDrawingMode mode, OdInt32 subMode, const OdUInt32Array &viewportIds)=0
OdGiTransientManager::kOdGiHighlight
@ kOdGiHighlight
Definition: GiTransientManager.h:50
OdGiTransientManagerPE::transientManager
virtual OdGiTransientManager * transientManager(const OdRxObject *pThis) const =0
OdGiTransientManager::kOdGiSprite
@ kOdGiSprite
Definition: GiTransientManager.h:48
OdGiTransientManager::addTransient
virtual bool addTransient(OdGiDrawable *pDrawable, OdGiTransientDrawingMode mode, OdInt32 subMode, const OdUInt32Array &viewportIds)=0
OdGiTransientManagerPE::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiTransientManagerPE)
UInt32Array.h
OdGiTransientManagerPtr
OdSmartPtr< OdGiTransientManager > OdGiTransientManagerPtr
Definition: GiTransientManager.h:133
OdGiTransientManager::updateChildTransient
virtual void updateChildTransient(OdGiDrawable *pDrawable, OdGiDrawable *pParent) const =0
OdGiTransientManager
Definition: GiTransientManager.h:41