![]() |
OpendTect 8.0
|
DataObject is the base class off all objects that are used in Visualization and ought to be shared in visBase::DataManager. The DataManager owns all the objects and is thus the only one that is allowed to delete it. The destructors on the inherited classes should thus be protected. More...
#include <visdata.h>
Public Member Functions | |
| template<class T > | |
| T * | addNodeState (T *ns) |
| void | deSelect () const |
| virtual NotifierAccess * | deSelection () |
| void | enableTraversal (unsigned int mask, bool yn=true) |
| virtual const char * | errMsg () const |
| virtual const char * | getClassName () const |
| virtual const visBase::Transformation * | getDisplayTransformation () const |
| SoNode * | getInventorNode () |
| const SoNode * | getInventorNode () const |
| BufferString | getName () const override |
| NodeState * | getNodeState (int idx) |
| virtual float | getPixelDensity () const |
| VisID | id () const |
| virtual bool | isOK () const |
| virtual bool | isOn () const |
| bool | isPickable (bool actively=true) const |
| virtual bool | isRightHandSystem () const |
| virtual bool | isSelected () const |
| bool | isTraversalEnabled (unsigned int mask) const |
| const OD::String & | name () const override |
| osg::Node * | osgNode (bool skipswitch=false) |
| const osg::Node * | osgNode (bool skipswitch=false) const |
| NodeState * | removeNodeState (NodeState *) |
| virtual bool | rightClickable () const |
| virtual NotifierAccess * | rightClicked () |
| virtual const TypeSet< VisID > * | rightClickedPath () const |
| void | select () const |
| virtual bool | selectable () const |
| virtual NotifierAccess * | selection () |
| bool | serialize (const char *filename, bool binary=false) |
| virtual void | setDisplayTransformation (const visBase::Transformation *) |
| void | setID (const VisID &) |
| void | setName (const char *) override |
| void | setName (const uiString &uistr) |
| void | setPickable (bool actively, bool passively=true) |
| virtual void | setPixelDensity (float dpi) |
| virtual void | setRightHandSystem (bool yn) |
| void | setUiName (const uiString &) |
| virtual bool | turnOn (bool yn) |
| uiString | uiName () const |
| void | updateSel () const |
Public Member Functions inherited from SharedObject | |
| SharedObject (const char *nm=nullptr) | |
Public Member Functions inherited from NamedCallBacker | |
| NamedCallBacker (const char *nm=nullptr) | |
| NamedCallBacker (const NamedCallBacker &)=delete | |
| ~NamedCallBacker () | |
| virtual Notifier< NamedCallBacker > & | objectToBeDeleted () const |
| NamedCallBacker & | operator= (const NamedCallBacker &)=delete |
| bool | operator== (const NamedCallBacker &oth) const |
| bool | operator== (const NamedObject &oth) const |
Public Member Functions inherited from CallBacker | |
| CallBacker () | |
| CallBacker (const CallBacker &) | |
| virtual | ~CallBacker () |
| bool | attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const |
| bool | attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const |
| void | detachAllNotifiers () const |
| Call from the destructor of your inherited object. | |
| void | detachCB (const NotifierAccess &, const CallBack &) const |
| void | detachCB (const NotifierAccess *notif, const CallBack &cb) const |
| virtual bool | isCapsule () const |
| bool | isNotifierAttached (const NotifierAccess *) const |
| Only for debugging purposes, don't use. | |
| CallBacker & | operator= (const CallBacker &)=delete |
| void | stopReceivingNotifications () const |
| virtual CallBacker * | trueCaller () |
Public Member Functions inherited from NamedObject | |
| NamedObject (const char *nm=nullptr) | |
| NamedObject (const NamedObject &oth) | |
| virtual | ~NamedObject () |
| bool | getNameFromPar (const IOPar &) |
| const name_type & | name () const override |
| NamedObject & | operator= (const NamedObject &) |
| bool | operator== (const NamedObject &oth) const |
Public Member Functions inherited from ObjectWithName | |
| virtual | ~ObjectWithName () |
| bool | hasName (const char *nm) const |
| bool | hasName (const name_type &nm) const |
| void | putNameInPar (IOPar &) const |
Public Member Functions inherited from RefCount::Referenced | |
| void | addObserver (WeakPtrBase *obs) |
| Not for normal use. May become private. | |
| int | nrRefs () const |
| Only for expert use. | |
| void | ref () const |
| bool | refIfReffed () const |
| Don't use in production, for debugging. | |
| void | removeObserver (WeakPtrBase *obs) |
| Not for normal use. May become private. | |
| bool | tryRef () const |
| Not for normal use. May become private. | |
| void | unRef () const |
| void | unRefNoDelete () const |
Static Public Member Functions | |
| static osgViewer::CompositeViewer * | getCommonViewer () |
| static float | getDefaultPixelDensity () |
| static VisID | getID (const osg::Node *) |
| static bool | isVisualizationThread () |
| static void | requestSingleRedraw () |
| static void | setCommonViewer (osgViewer::CompositeViewer *) |
| static void | setDefaultPixelDensity (float) |
| static void | setVisualizationThread (const void *) |
| Call only once from initialization. | |
Static Public Member Functions inherited from SharedObject | |
| static Notifier< SharedObject > & | instanceCreated () |
Static Public Member Functions inherited from CallBacker | |
| static void | createReceiverForCurrentThread () |
| static void | removeReceiverForCurrentThread () |
Static Public Member Functions inherited from RefCount::Referenced | |
| static bool | isSane (const Referenced *) |
Protected Member Functions | |
| DataObject () | |
| ~DataObject () | |
| void | doAddNodeState (NodeState *) |
| virtual osg::StateSet * | getStateSet () |
| template<class T > | |
| T * | setOsgNode (T *t) |
| Must be called during construction. | |
| virtual void | triggerDeSel () |
| virtual void | triggerRightClick (const EventInfo *=nullptr) |
| virtual void | triggerSel () |
| void | updateNodemask () |
Protected Member Functions inherited from SharedObject | |
| ~SharedObject () | |
Protected Member Functions inherited from NamedCallBacker | |
| void | sendDelNotif () const |
Protected Member Functions inherited from RefCount::Referenced | |
| Referenced () | |
| Referenced (const Referenced &) | |
| virtual | ~Referenced () |
| Referenced & | operator= (const Referenced &) |
Private Member Functions | |
| void | setOsgNodeInternal (osg::Node *) |
| void | updateOsgNodeData () |
Private Attributes | |
| unsigned int | enabledmask_ |
| VisID | id_ |
| bool | ison_ = true |
| RefObjectSet< NodeState > | nodestates_ |
| osg::Node * | osgnode_ = nullptr |
| osg::Switch * | osgoffswitch_ = nullptr |
| uiString | uiname_ |
Static Private Attributes | |
| static osgViewer::CompositeViewer * | commonviewer_ |
| static const void * | visualizationthread_ |
Friends | |
| class | Scene |
| class | SelectionManager |
Additional Inherited Members | |
Public Types inherited from ObjectWithName | |
| typedef OD::String | name_type |
Protected Attributes inherited from NamedCallBacker | |
| Threads::Atomic< bool > | delalreadytriggered_ |
| Notifier< NamedCallBacker > | delnotif_ |
Protected Attributes inherited from NamedObject | |
| BufferString | name_ |
DataObject is the base class off all objects that are used in Visualization and ought to be shared in visBase::DataManager. The DataManager owns all the objects and is thus the only one that is allowed to delete it. The destructors on the inherited classes should thus be protected.
<>
|
protected |
|
protected |
|
inline |
| void visBase::DataObject::deSelect | ( | ) | const |
|
inlinevirtual |
Reimplemented in visBase::VisualObject.
|
protected |
| void visBase::DataObject::enableTraversal | ( | unsigned int | mask, |
| bool | yn = true ) |
|
inlinevirtual |
Reimplemented in visSurvey::EMObjectDisplay, visSurvey::FaultStickSetDisplay, visSurvey::LocationDisplay, visSurvey::MarchingCubesDisplay, visSurvey::MultiTextureSurveyObject, visSurvey::PointSetDisplay, visSurvey::PolygonBodyDisplay, visSurvey::PolyLineDisplay, visSurvey::RandomPosBodyDisplay, visSurvey::RandomTrackDisplay, visSurvey::VolumeDisplay, and visSurvey::WellDisplay.
|
inlinevirtual |
Reimplemented in visBase::Annotation, visBase::Axes, visBase::BoxDragger, visBase::Camera, visBase::Coordinates, visBase::DataObjectGroup, visBase::DepthTabPlaneDragger, visBase::Dragger, visBase::EventCatcher, visBase::FlatViewer, visBase::GeomIndexedShape, visBase::GridLines, visBase::HorizonSection, visBase::Image, visBase::ImageRect, visBase::Lines, visBase::MarchingCubesSurface, visBase::MarkerSet, visBase::Normals, visBase::PointSet, visBase::PolygonSelection, visBase::PolyLine, visBase::PolyLine3D, visBase::RandomPos2Body, visBase::RandomTrackDragger, visBase::RGBATextureChannel2RGBA, visBase::ScaleBar, visBase::Scene, visBase::SceneColTab, visBase::VertexShape, visBase::Text2, visBase::ColTabTextureChannel2RGBA, visBase::TextureChannel2VolData, visBase::TextureChannels, visBase::TextureCoords, visBase::TexturePanelStrip, visBase::TextureRectangle, visBase::ThumbWheel, visBase::TopBotImage, visBase::Transformation, visBase::TriangleStripSet, visBase::OrthogonalSlice, visBase::VolumeRenderScalarField, and visBase::Well.
|
static |
|
static |
|
inlinevirtual |
All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.
Reimplemented in visBase::Annotation, visBase::BoxDragger, visBase::Coordinates, visBase::DataObjectGroup, visBase::DepthTabPlaneDragger, visBase::DraggerBase, visBase::GeomIndexedShape, visBase::HorizonSection, visBase::MarchingCubesSurface, visBase::MarkerSet, visBase::Normals, visBase::RandomPos2Body, visBase::RandomTrackDragger, visBase::VertexShape, visBase::TexturePanelStrip, visBase::TextureRectangle, visBase::TopBotImage, visBase::OrthogonalSlice, visBase::Well, visSurvey::ArrowDisplay, visSurvey::EMObjectDisplay, visSurvey::FaultDisplay, visSurvey::FaultSetDisplay, visSurvey::FaultStickSetDisplay, visSurvey::ImageDisplay, visSurvey::LocationDisplay, visSurvey::MarchingCubesDisplay, visSurvey::MPEEditor, visSurvey::MPEClickCatcher, visSurvey::PickSetDisplay, visSurvey::PlaneDataDisplay, visSurvey::PointSetDisplay, visSurvey::PolygonBodyDisplay, visSurvey::PolyLineDisplay, visSurvey::PSEventDisplay, visSurvey::RandomPosBodyDisplay, visSurvey::RandomTrackDisplay, visSurvey::ScaleBarDisplay, visSurvey::Seis2DDisplay, and visSurvey::WellDisplay.
|
static |
|
inline |
|
inline |
|
overridevirtual |
Reimplemented from NamedObject.
| NodeState * visBase::DataObject::getNodeState | ( | int | idx | ) |
|
virtual |
|
protectedvirtual |
|
inline |
|
inlinevirtual |
|
virtual |
| bool visBase::DataObject::isPickable | ( | bool | actively = true | ) | const |
|
inlinevirtual |
Reimplemented in visBase::DataObjectGroup, visBase::VisualObjectImpl, visBase::VolumeRenderScalarField, and visSurvey::Scene.
|
virtual |
Reimplemented in visSurvey::VolumeDisplay.
| bool visBase::DataObject::isTraversalEnabled | ( | unsigned int | mask | ) | const |
|
static |
|
overridevirtual |
Implements ObjectWithName.
| osg::Node * visBase::DataObject::osgNode | ( | bool | skipswitch = false | ) |
| const osg::Node * visBase::DataObject::osgNode | ( | bool | skipswitch = false | ) | const |
|
static |
|
inlinevirtual |
Reimplemented in visSurvey::VolumeDisplay.
|
inlinevirtual |
Reimplemented in visBase::Dragger, visBase::VisualObject, and visBase::RandomTrackDragger.
Reimplemented in visBase::Dragger, visBase::VisualObject, and visBase::RandomTrackDragger.
| void visBase::DataObject::select | ( | ) | const |
|
inlinevirtual |
Reimplemented in visBase::BoxDragger, visBase::Dragger, visBase::VisualObject, visSurvey::PointSetDisplay, and visSurvey::VolumeDisplay.
|
inlinevirtual |
Reimplemented in visBase::VisualObject.
| bool visBase::DataObject::serialize | ( | const char * | filename, |
| bool | binary = false ) |
|
static |
|
static |
|
virtual |
All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.
Reimplemented in visBase::Annotation, visBase::BoxDragger, visBase::Coordinates, visBase::DataObjectGroup, visBase::DepthTabPlaneDragger, visBase::DraggerBase, visBase::Dragger, visBase::FlatViewer, visBase::GeomIndexedShape, visBase::GridLines, visBase::HorizonSection, visBase::ImageRect, visBase::MarchingCubesSurface, visBase::MarkerSet, visBase::Normals, visBase::PointSet, visBase::PolyLine, visBase::PolyLine3D, visBase::RandomPos2Body, visBase::RandomTrackDragger, visBase::ScaleBar, visBase::VertexShape, visBase::Text2, visBase::TexturePanelStrip, visBase::TextureRectangle, visBase::TopBotImage, visBase::OrthogonalSlice, and visBase::Well.
| void visBase::DataObject::setID | ( | const VisID & | ) |
|
overridevirtual |
Reimplemented from NamedObject.
Reimplemented in visBase::Scene.
|
inline |
|
inlineprotected |
Must be called during construction.
|
private |
| void visBase::DataObject::setPickable | ( | bool | actively, |
| bool | passively = true ) |
actively: mouse click/drag, key press, etc. passively: hovering (e.g. status info)
|
virtual |
Reimplemented in visBase::Axes, visBase::DataObjectGroup, visBase::SceneColTab, visSurvey::EMObjectDisplay, visSurvey::FaultDisplay, visSurvey::FaultSetDisplay, visSurvey::FaultStickSetDisplay, visBase::Annotation, visBase::FlatViewer, visBase::GeomIndexedShape, visBase::GridLines, visBase::MarkerSet, visBase::PolyLine3D, visBase::Text2, visBase::Well, visSurvey::Horizon2DDisplay, visSurvey::HorizonDisplay, visSurvey::PickSetDisplay, visSurvey::PointSetDisplay, visSurvey::PolygonBodyDisplay, visSurvey::PolyLineDisplay, visSurvey::PSEventDisplay, visSurvey::RandomTrackDisplay, visSurvey::Seis2DDisplay, and visSurvey::WellDisplay.
|
inlinevirtual |
Sets whether the coordinate system is right or left handed.
Reimplemented in visBase::VisualObjectImpl, visSurvey::LocationDisplay, visSurvey::VolumeDisplay, visBase::DataObjectGroup, visBase::MarchingCubesSurface, and visBase::VolumeRenderScalarField.
| void visBase::DataObject::setUiName | ( | const uiString & | ) |
|
static |
Call only once from initialization.
|
inlineprotectedvirtual |
Is called everytime object is deselected.
Reimplemented in visBase::VisualObject, and visSurvey::LocationDisplay.
|
inlineprotectedvirtual |
Reimplemented in visBase::VisualObject, visBase::Dragger, and visBase::RandomTrackDragger.
|
inlineprotectedvirtual |
Is called everytime object is selected.
Reimplemented in visBase::VisualObject.
|
virtual |
| uiString visBase::DataObject::uiName | ( | ) | const |
|
protected |
|
private |
| void visBase::DataObject::updateSel | ( | ) | const |
|
friend |
|
friend |
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2025