24#ifndef ODGSBASEVECTORIZEDEVICE_INC
25#define ODGSBASEVECTORIZEDEVICE_INC
386 bool enableLayerVisibilityPerView =
false);
705 return m_slotManager.contains(acgiId);
841 mutable OdMutex m_mtInvalidRects;
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
OdSmartPtr< OdGiTransientManager > OdGiTransientManagerPtr
OdSmartPtr< OdGsUpdateManager > OdGsUpdateManagerPtr
OdSmartPtr< OdGsView > OdGsViewPtr
OdSmartPtr< OdGsModel > OdGsModelPtr
OdSmartPtr< OdRxDictionary > OdRxDictionaryPtr
OdSmartPtr< OdGsBaseModule > OdGsBaseModulePtr
OdArray< OdRxObject *, OdMemoryAllocator< OdRxObject * > > OdDbBaseDatabaseRawPtrArray
OdArray< ODCOLORREF, OdMemoryAllocator< ODCOLORREF > > ODGSPALETTE
OdSmartPtr< OdGiTransientManager > OdGiTransientManagerPtr
OdArray< OdGsDCRect, OdMemoryAllocator< OdGsDCRect > > OdGsDCRectArray
#define GS_TOOLKIT_EXPORT
#define SETBIT(flags, bit, value)
#define GETBIT(flags, bit)
bool mergeInvalidRects(OdGsDCRect *pRect, OdUInt32 nOverlays=kGsAllOverlays) const
bool containsInvalidRects(const OdGsViewImpl &view, bool bIfHas=false, OdUInt32 nOverlays=kGsAllOverlays) const
void clearInvalidRects(OdUInt32 nOverlays=kGsAllOverlays)
bool hasInvalidRects(OdUInt32 nOverlays=kGsAllOverlays) const
bool eraseView(int viewIndex)
ODCOLORREF getBackgroundColor()
virtual bool isSupportDeviceStateSaving() const
void onDisplayChange(int bitsPerPixel, int xPixels, int yPixels)
friend class DisplayScheduler
friend class OdGsViewImpl
void setSupportHighlightTwoPass(bool bOn)
bool isValidViewportId(const OdUInt32 acgiId) const
bool supportBlocks() const
const OdGsDCRect & outputRect() const
int isOverlayRequireUpdate(OdGsOverlayId overlayId) const
GsDeviceOverlayDataContainer m_overlayData
virtual void update(OdGsDCRect *pUpdatedRect)
void setInvalid(bool bSet)
OdGsModel::RenderType transientRenderType() const
void unregisterOverlay(OdGsViewImpl *pView, const OdGsModel *pModel)
void clearSectionGeometryMap()
void setTransientRenderType(OdGsModel::RenderType renderType)
OdGsModel::RenderType m_transientRenderType
const OdGsViewImpl * viewImplAt(int viewIndex) const
void disableSpatialIndex(bool bSet)
void onSize(const OdGsDCRect &outputRect)
virtual bool supportParallelDisplay() const
virtual void updateScreen()
GsVectPerformanceData m_vectPerfData
bool useVpLtypeScaleMult() const
OdSmartPtr< OdGiContext > m_pUserContext
void setUpdateManager(OdGsUpdateManagerPtr pManager)
const ODCOLORREF * getPalette() const
bool isDisplayOffLayersEnabled() const
void enableDisplayOffLayers(bool bSet)
OdRxObjectPtr m_sectionManager
void onViewAdded(OdGsView *pView)
void invalidate(const OdGsViewImpl *pView, const OdGsDCRect &screenRect)
bool saveDeviceState(OdGsFiler *pFiler) const
bool isModelCompatible(OdGsModel *pModel) const
void invalidate(const OdGsDCRect &screenRect)
bool useVpFilterFunction() const
bool isSuppressHide() const
bool supportDynamicHighlight() const
bool supportDynamicSubhighlight() const
virtual OdGsOverlayId renderTypeOverlay(OdGsModel::RenderType renderType) const
bool supportInteractiveViewMode() const
OdRxObjectPtr getSectionGeometryMap()
const OdGsView * rootView() const
void setLogicalPalette(const ODCOLORREF *logicalPalette, int numColors)
bool setBackgroundColor(ODCOLORREF backgroundColor)
void collectInvalidRectsFromVports(OdGsOverlayId nOverlay, GsDeviceOverlayData &d) const
~OdGsBaseVectorizeDevice()
bool supportHighlightTwoPass() const
friend class OdGsBaseVectorizeView
void invalidate(const OdGsModel *pModel, const OdGsDCRect &screenRect)
OdGsModelPtr createModel()
virtual void onOverlayActivated(OdGsOverlayId nOverlay)
OdGsUpdateManagerPtr getUpdateManager(bool createIfNotExist=false)
void getSize(OdGsDCRect &outputRect) const
ODCOLORREF getPaletteBackground() const
const ODCOLORREF * getLogicalPalette(int &numColors) const
bool supportOverlays() const
OdGsView * viewAt(int viewIndex)
void enableCullingVolume(bool bSet)
friend class OdGsNodeContext
virtual OdUInt32 renderTypeWeight(OdGsModel::RenderType renderType) const
friend class OdGsBaseModule
virtual bool supportPartialScreenUpdate() const
void setSupportInteractiveViewMode(bool bSet)
bool isCullingVolumeEnabled() const
OdRxObjectPtr deviceSelfReference()
void viewUpdateScreen(OdGsBaseVectorizeView *pView, bool bUpdate)
OdGsUpdateManagerPtr m_pUpdateManager
virtual void onOverlayDeactivated(OdGsOverlayId nOverlay)
bool eraseView(OdGsView *pView)
bool isSpatialIndexDisabled() const
OdRxObjectPtr m_sectionGeometryMap
virtual void invalidate(OdUInt32 nOverlays, const OdGsDCRect &screenRect)
virtual bool saveLinkedDeviceState(OdGsFiler *pFiler) const
void registerOverlay(OdGsViewImpl *pView, const OdGsModel *pModel)
void setValid(bool bFlag)
void setSortRenderTypes(bool flag)
OdGsBaseVectorizeDevice()
ODCOLORREF getColor(OdUInt16 colorIndex) const
bool loadDeviceState(OdGsFiler *pFiler)
OdGsOverlayId gsModelOverlay(const OdGsModel *pModel) const
virtual bool supportPartialUpdate() const
void addView(OdGsView *pView)
ODRX_DECLARE_MEMBERS(OdGsBaseVectorizeDevice)
virtual bool loadLinkedDeviceState(OdGsFiler *pFiler)
const OdGsDCRectArray * invalidRects(OdGsOverlayId overlayId) const
bool supportComposition() const
const OdGsView * viewAt(int viewIndex) const
OdGiTransientManagerPtr m_transientManager
void onRealizeBackgroundPalette()
void setSupportOverlays(bool bFlag)
void getInvalidRectsFromVports(OdUInt32 nOverlays=kGsAllOverlays)
virtual void updateGeometry()
OdArray< OdGsViewPtr > m_views
bool sortRenderTypes() const
bool compositionEnabled() const
void enableComposition(bool bSet)
bool supportSelectionStyles() const
void setUserGiContext(OdGiContext *pUserGiContext)
OdRxObject * mtServices()
OdRxObjectPtr m_pDeviceRef
OdGiContext * userGiContext() const
virtual void invalidate(OdUInt32 nOverlays)
virtual bool loadClientDeviceState(OdGsFiler *pFiler)
void invalidateRegion(const OdGiPathNode &path)
const OdGsDCRectArray & invalidRects() const
OdGsUpdateManager * updateManager()
@ kSupportSelectionStyles
@ kSupportInteractiveView
virtual bool saveClientDeviceState(OdGsFiler *pFiler) const
OdGsViewPtr createView(const OdGsClientViewInfo *pViewInfo=0, bool enableLayerVisibilityPerView=false)
void setTransientManager(OdGiTransientManager *pManager)
void insertView(int viewIndex, OdGsView *pView)
virtual OdGiSectionGeometryManager * getSectionGeometryManager()
OdGiTransientManager * transientManager()
OdRxDictionaryPtr properties()
void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect ®ion)
OdGsViewImpl * viewImplAt(int viewIndex)
void onRealizeForegroundPalette()
virtual void getSize(OdGsDCRect &outputRect) const =0
virtual const ODCOLORREF * getLogicalPalette(int &numColors) const =0
OdGsOverlayDataContainer()
OdGsDCRectArray m_invalidRects
bool m_bHasInvalidRectsInVports