OpendTect 8.0
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
visSurvey::RandomTrackDisplay Class Reference

Used for displaying a random or arbitrary line. More...

#include <visrandomtrackdisplay.h>

Inheritance diagram for visSurvey::RandomTrackDisplay:
[legend]

Classes

struct  UpdateStageInfo
 

Public Member Functions

 RandomTrackDisplay ()
 
void acceptManipulation () override
 
void addNode (const BinID &)
 
void addNode (int nodenr)
 
bool allowMaterialEdit () const override
 
bool allowsPicks () const override
 
void annotateNextUpdateStage (bool yn) override
 
float calcDist (const Coord3 &) const override
 
bool canAddNode (int nodenr) const
 
bool canBDispOn2DViewer () const override
 
bool canDuplicate () const override
 
bool canResetManipulation () const override
 
bool createFromPolyLine ()
 
SurveyObjectduplicate (TaskRunner *) const override
 
const char * errMsg () const override
 
void fillPar (IOPar &) const override
 
void getAllNodePos (TrcKeySet &) const
 
void getAllNodePos (TypeSet< BinID > &) const
 
SurveyObject::AttribFormat getAttributeFormat (int attrib) const override
 
int getClosestPanelIdx (const Coord &) const
 
Interval< float > getDataTraceRange () const override
 
Interval< float > getDepthInterval () const
 
RefMan< VolumeDataPackgetDisplayedVolumeDataPack (int attrib)
 
ConstRefMan< VolumeDataPackgetDisplayedVolumeDataPack (int attrib) const override
 
const mVisTrans * getDisplayTransformation () const override
 
BinID getManipNodePos (int) const
 
NotifierAccessgetManipulationNotifier () override
 
uiString getManipulationString () const override
 
const MouseCursorgetMouseCursor () const override
 
void getMousePosInfo (const visBase::EventInfo &, Coord3 &, BufferString &, uiString &) const override
 
void getMousePosInfo (const visBase::EventInfo &, IOPar &) const override
 
NotifierAccessgetMovementNotifier () override
 
MultiID getMultiID () const override
 
BinID getNodePos (int) const
 
TypeSet< BinID > * getNodes ()
 
Coord3 getNormal (const Coord3 &) const override
 
void getObjectInfo (uiString &) const override
 
Geometry::RandomLinegetRandomLine ()
 
const Geometry::RandomLinegetRandomLine () const
 
RandomLineID getRandomLineID () const
 
BufferString getRandomLineName () const
 
bool getSelMousePosInfo (const visBase::EventInfo &, Coord3 &, BufferString &, uiString &) const
 
int getSelNodeIdx () const
 knotidx>=0, panelidx<0
 
visBase::TexturePanelStripgetTexturePanelStrip ()
 
const visBase::TexturePanelStripgetTexturePanelStrip () const
 
void getTraceKeyPath (TrcKeySet &, TypeSet< Coord > *) const override
 
const TrcKeySetgetTrcKeyPath () const
 
TrcKeyZSampling getTrcKeyZSampling (bool displayspace, int attrib) const override
 
TypeSet< CoordgetTrueCoords () const
 
const ZAxisTransformgetZAxisTransform () const override
 
bool hasPosModeManipulator () const override
 
void insertNode (int, const BinID &)
 
bool isGeometryLocked () const
 
bool isInlCrl () const override
 
bool isManipulated () const override
 
bool isManipulatorShown () const override
 
void lockGeometry (bool)
 
int nameNr () const
 
int nrNodes () const
 
int nrResolutions () const override
 
void removeAllNodes ()
 
void removeNode (int)
 
void resetManipulation () override
 
void setColor (OD::Color) override
 
void setDepthInterval (const Interval< float > &)
 
void setDisplayTransformation (const mVisTrans *) override
 
void setNodePos (int, const BinID &)
 
bool setNodePositions (const TypeSet< BinID > &)
 
void setPixelDensity (float) override
 
void setPolyLineMode (bool yn)
 
void setRandomLineID (const RandomLineID &)
 
void setResolution (int, TaskRunner *) override
 
void setSceneEventCatcher (visBase::EventCatcher *) override
 
bool setZAxisTransform (ZAxisTransform *, TaskRunner *) override
 
void showManipulator (bool) override
 
bool usePar (const IOPar &) override
 
- Public Member Functions inherited from visSurvey::MultiTextureSurveyObject
bool addAttrib () override
 
void allowShading (bool) override
 
bool canAddAttrib (int nrattribstoadd=1) const override
 
bool canDisplayInteractively () const
 
bool canDisplayInteractively (Pos::GeomID) const
 
bool canEnableTextureInterpolation () const override
 
bool canHaveMultipleAttribs () const override
 
bool canHaveMultipleTextures () const override
 
bool canRemoveAttrib () const override
 
bool canSetColTabSequence () const override
 
void clearTextures ()
 
void enableAttrib (int attrib, bool yn) override
 
void enableTextureInterpolation (bool) override
 
unsigned char getAttribTransparency (int) const override
 
const visBase::TextureChannelsgetChannels () const override
 
visBase::TextureChannelsgetChannels () override
 
const visBase::TextureChannel2RGBAgetChannels2RGBA () const override
 
visBase::TextureChannel2RGBAgetChannels2RGBA () override
 
int getColTabID (int) const
 
const ColTab::MapperSetupgetColTabMapperSetup (int attrib, int version) const override
 
const ColTab::MapperSetupgetColTabMapperSetup (int) const
 
const ColTab::SequencegetColTabSequence (int) const override
 
const TypeSet< float > * getHistogram (int) const override
 
int getResolution () const override
 
const Attrib::SelSpecgetSelSpec (int attrib, int version=-1) const override
 version=-1 gives current version
 
const TypeSet< Attrib::SelSpec > * getSelSpecs (int attrib) const override
 
bool isAngle (int attrib) const override
 
bool isAttribEnabled (int attrib) const override
 
bool isOn () const override
 
bool isShown () const
 
int maxNrAttribs () const override
 
int nrAttribs () const override
 
int nrTextures (int attrib) const override
 
bool removeAttrib (int attrib) override
 
int selectedTexture (int attrib) const override
 
void selectTexture (int attrib, int texture) override
 
void setAngleFlag (int attrib, bool yn) override
 
void setAttribTransparency (int, unsigned char) override
 
bool setChannels2RGBA (visBase::TextureChannel2RGBA *) override
 
void setColTabMapperSetup (int, const ColTab::MapperSetup &, TaskRunner *) override
 
void setColTabSequence (int, const ColTab::Sequence &, TaskRunner *) override
 
void setSelSpec (int, const Attrib::SelSpec &) override
 
void setSelSpecs (int attrib, const TypeSet< Attrib::SelSpec > &) override
 
bool swapAttribs (int attrib0, int attrib1) override
 
bool textureInterpolationEnabled () const override
 
bool turnOn (bool yn) override
 
- Public Member Functions inherited from visBase::VisualObjectImpl
const MaterialgetMaterial () const
 
MaterialgetMaterial () override
 
bool isRightHandSystem () const override
 
NotifierAccessmaterialChange ()
 
void readLock ()
 
void readUnLock ()
 
void setLockable ()
 
void setMaterial (Material *) override
 
void setRightHandSystem (bool yn) override
 
bool tryReadLock ()
 
bool tryWriteLock ()
 
void writeLock ()
 
void writeUnLock ()
 
- Public Member Functions inherited from visBase::VisualObject
NotifierAccessdeSelection () override
 
virtual bool getBoundingBox (Coord3 &min, Coord3 &max) const
 
NotifierAccessrightClicked () override
 
const EventInforightClickedEventInfo () const
 
const TypeSet< VisID > * rightClickedPath () const override
 
bool selectable () const override
 
NotifierAccessselection () override
 
void setSelectable (bool yn)
 
- Public Member Functions inherited from visBase::DataObject
template<class T >
T * addNodeState (T *ns)
 
void deSelect () const
 
void enableTraversal (unsigned int mask, bool yn=true)
 
virtual const char * getClassName () const
 
SoNode * getInventorNode ()
 
const SoNode * getInventorNode () const
 
BufferString getName () const override
 
NodeStategetNodeState (int idx)
 
virtual float getPixelDensity () const
 
VisID id () const
 
virtual bool isOK () const
 
bool isPickable (bool actively=true) const
 
virtual bool isSelected () const
 
bool isTraversalEnabled (unsigned int mask) const
 
const OD::Stringname () const override
 
osg::Node * osgNode (bool skipswitch=false)
 
const osg::Node * osgNode (bool skipswitch=false) const
 
NodeStateremoveNodeState (NodeState *)
 
virtual bool rightClickable () const
 
void select () const
 
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)
 
void setUiName (const uiString &)
 
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
 
NamedCallBackeroperator= (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.
 
CallBackeroperator= (const CallBacker &)=delete
 
void stopReceivingNotifications () const
 
virtual CallBackertrueCaller ()
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=nullptr)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
bool getNameFromPar (const IOPar &)
 
const name_typename () const override
 
NamedObjectoperator= (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
 
- Public Member Functions inherited from visSurvey::SurveyObject
virtual bool alreadyTransformed (int attrib) const
 
virtual bool canBeRemoved () const
 
virtual bool canHandleColTabSeqTrans (int) const
 
virtual bool canRemoveSelection () const
 
virtual bool canShowTexture () const
 
virtual void clearSelections ()
 
virtual bool displayedOnlyAtSections () const
 
virtual void enableEditor (bool yn)
 
const Survey::Geometry3Dget3DSurvGeom () const
 
virtual const char * get3DSurvGeomName () const
 
virtual OD::Pol2D3D getAllowedDataType () const
 
virtual OD::Color getAnnotColor () const
 
OD::Color getBackgroundColor () const
 
void getChannelName (int, uiString &) const
 
virtual void getChildren (TypeSet< VisID > &) const
 
virtual OD::Color getColor () const
 
virtual DataPackID getDataPackID (int attrib) const
 
virtual mDeprecatedObs DataPackMgr::MgrID getDataPackMgrID () const
 
virtual ConstRefMan< DataPackgetDisplayedDataPack (int attrib) const
 
virtual DataPackID getDisplayedDataPackID (int attrib) const
 
virtual ConstRefMan< FlatDataPackgetFlatDataPack (int attr) const
 
virtual Pos::GeomID getGeomID () const
 
virtual void getLineWidthBounds (int &min, int &max)
 
virtual NotifierAccessgetLockNotifier ()
 
virtual void getPickingMessage (BufferString &msg) const
 
virtual ConstRefMan< PointDataPackgetPointDataPack (int attr) const
 
virtual bool getRandomPos (DataPointSet &, TaskRunner *) const
 
virtual bool getRandomPosCache (int attrib, DataPointSet &) const
 
virtual BufferString getResolutionName (int) const
 
bool getSaveInSessionsFlag () const
 
virtual ScenegetScene ()
 
virtual const ScenegetScene () const
 
SceneID getSceneID () const
 
virtual Coord3 getTranslation () const
 
int getUpdateStageNr () const
 
virtual bool hasColor () const
 
bool hasSelSpec (const Attrib::SelSpec &, int &attrib, int &version) const
 
virtual bool hasSingleColorFallback () const
 
virtual bool hasSpecificLineColor () const
 
virtual bool hasSpecificMarkerColor () const
 
bool isAnyAttribEnabled () const
 
virtual bool isLocked () const
 
virtual bool isPainting () const
 
virtual bool isVerticalPlane () const
 
virtual const OD::LineStylelineStyle () const
 
virtual void lock (bool yn)
 
virtual const MarkerStyle3DmarkerStyle () const
 
virtual float maxDist () const
 
virtual void otherObjectsMoved (const ObjectSet< const SurveyObject > &, const VisID &whichobj)
 
virtual void readAuxData ()
 
virtual bool removeSelections (TaskRunner *)
 
virtual void set3DSurvGeom (const Survey::Geometry3D *)
 
virtual void setAnnotColor (OD::Color)
 
virtual bool setDataPackID (int attrib, const DataPackID &, TaskRunner *)
 
virtual bool setFlatDataPack (int attr, FlatDataPack *, TaskRunner *)
 
virtual void setLineStyle (const OD::LineStyle &)
 
virtual void setMarkerStyle (const MarkerStyle3D &)
 
virtual void setOnlyAtSectionsDisplay (bool)
 
virtual bool setPointDataPack (int attr, PointDataPack *, TaskRunner *)
 
virtual bool setRandomPosData (int attrib, const DataPointSet *, TaskRunner *)
 
void setSaveInSessionsFlag (bool yn)
 
virtual void setScene (Scene *)
 
virtual void setTranslation (const Coord3 &)
 
virtual void setTrcKeyZSampling (const TrcKeyZSampling &)
 
void setUserRefs (int attrib, BufferStringSet *nms)
 
virtual bool showsTexture () const
 
virtual void snapToTracePos (Coord3 &) const
 
virtual void turnOnSelectionMode (bool)
 
virtual bool usesColor () const
 
virtual bool usesTexture () const
 
virtual void useTexture (bool yn, bool trigger)
 

Static Public Member Functions

static const char * sKeyPanelDepthKey ()
 
static const char * sKeyPanelPlaneKey ()
 
static const char * sKeyPanelRotateKey ()
 
- Static Public Member Functions inherited from visBase::VisualObjectImpl
static const char * sKeyIsOn ()
 
static const char * sKeyMaterial ()
 
static const char * sKeyMaterialID ()
 
- Static Public Member Functions inherited from visBase::DataObject
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 *)
 
- Static Public Member Functions inherited from visSurvey::SurveyObject
static float sDefMaxDist ()
 
static const char * sKeyAttribs ()
 
static const char * sKeyColTabID ()
 
static const char * sKeyLocked ()
 
static const char * sKeyMapper ()
 
static const char * sKeyNrAttribs ()
 
static const char * sKeyNrVersions ()
 
static const char * sKeySelTexture ()
 
static const char * sKeySequence ()
 
static const char * sKeySurvey ()
 
static const char * sKeyTC2RGBA ()
 
static const char * sKeyTextTrans ()
 

Public Attributes

Notifier< RandomTrackDisplaymoving_
 
Notifier< RandomTrackDisplaynodemoving_
 

Protected Member Functions

 ~RandomTrackDisplay ()
 
void addCache () override
 
void addNodeInternal (const BinID &)
 
float appliedZRangeStep () const
 
bool checkPosition (const BinID &) const
 
bool checkValidPick (const visBase::EventInfo &, const Coord3 &pos) const
 
void createTransformedDataPack (int attrib, TaskRunner *=nullptr)
 
void dataTransformCB (CallBacker *)
 
void draggerMoveFinished (CallBacker *)
 
void draggerRightClick (CallBacker *)
 
void emptyCache (int) override
 
void finishNodeMoveInternal ()
 
void geomChangeCB (CallBacker *)
 
void geomNodeMoveCB (CallBacker *)
 
bool getCacheValue (int attrib, int version, const Coord3 &, float &) const override
 Coord is in attribute space.
 
int getClosestPanelIdx (const Coord &, double *fracptr) const
 
ConstRefMan< DataPackgetDataPack (int attrib) const override
 
RefMan< VolumeDataPackgetVolumeDataPack (int attrib)
 
ConstRefMan< VolumeDataPackgetVolumeDataPack (int attrib) const override
 
bool hasCache (int) const override
 
void insertNodeInternal (int, const BinID &)
 
bool isMappingTraceOfBid (BinID bid, int trcidx, bool forward=true) const
 
bool isPicking () const override
 
void mouseCB (CallBacker *)
 
void movingNodeInternal (int selnodeidx)
 
void nodeMoved (CallBacker *)
 
void pickCB (CallBacker *)
 
BinID proposeNewPos (int node) const
 
void removeCache (int) override
 
void removeNodeInternal (int)
 
void removePickPos (const Coord3 &)
 
void removePickPos (int polyidx)
 
void setNodePos (int, const BinID &, bool check)
 
void setNodePositions (const TypeSet< BinID > &, bool onlyinternal)
 
void setPanelStripZRange (const Interval< float > &)
 
void setPickPos (const Coord3 &pos)
 
bool setVolumeDataPack (int attrib, VolumeDataPack *, TaskRunner *) override
 
BinID snapPosition (const BinID &) const
 
void snapZRange (Interval< float > &)
 
void swapCache (int, int) override
 
void updateChannels (int attrib, TaskRunner *)
 
void updateMouseCursorCB (CallBacker *) override
 
void updatePanelStripPath ()
 
void updatePath ()
 
void updateRanges (bool, bool)
 
void updateTexOriginAndScale (int attrib, const TrcKeySet &, const ZSampling &)
 
bool usesDataPacks () const override
 
- Protected Member Functions inherited from visSurvey::MultiTextureSurveyObject
 MultiTextureSurveyObject ()
 
 ~MultiTextureSurveyObject ()
 
void getValueString (const Coord3 &, BufferString &) const
 Coord is in ztransformed space.
 
virtual bool init ()
 
void updateMainSwitch ()
 
- Protected Member Functions inherited from visBase::VisualObjectImpl
 VisualObjectImpl (bool selectable)
 
virtual ~VisualObjectImpl ()
 
int addChild (osg::Node *)
 
int childIndex (const osg::Node *) const
 
void insertChild (int pos, osg::Node *)
 
virtual void materialChangeCB (CallBacker *)
 
void removeChild (osg::Node *)
 
void setGroupNode (DataObject *)
 
virtual void setGroupNode (osg::Group *)
 Must be called during construction.
 
- Protected Member Functions inherited from visBase::VisualObject
 VisualObject (bool selectable=false)
 
 ~VisualObject ()
 
void triggerDeSel () override
 
void triggerRightClick (const EventInfo *) override
 
void triggerSel () override
 
- Protected Member Functions inherited from visBase::DataObject
 DataObject ()
 
 ~DataObject ()
 
void doAddNodeState (NodeState *)
 
virtual osg::StateSet * getStateSet ()
 
template<class T >
T * setOsgNode (T *t)
 Must be called during construction.
 
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 ()
 
Referencedoperator= (const Referenced &)
 
- Protected Member Functions inherited from visSurvey::SurveyObject
 SurveyObject ()
 
virtual ~SurveyObject ()
 
void initAdaptiveMouseCursor (CallBacker *eventcb, const VisID &, int inplanedragkeys, MouseCursor &)
 

Static Protected Member Functions

static const char * sKeyDepthInterval ()
 
static const char * sKeyKnotPrefix ()
 
static const char * sKeyLockGeometry ()
 
static const char * sKeyNrKnots ()
 
static const char * sKeyTrack ()
 
- Static Protected Member Functions inherited from visSurvey::SurveyObject
static int cValNameOffset ()
 

Protected Attributes

RefObjectSet< RandomSeisDataPackdatapacks_
 
RefMan< ZAxisTransformdatatransform_
 
Interval< float > depthrg_
 
RefMan< visBase::RandomTrackDraggerdragger_
 
RefMan< visBase::EventCatchereventcatcher_
 
bool geomnodejustmoved_ = false
 
bool interactivetexturedisplay_ = false
 
bool ismanip_ = false
 
bool ispicking_ = false
 
bool lockgeometry_ = false
 
RefMan< visBase::MarkerSetmarkerset_
 
MouseCursor mousecursor_
 
int namenr_
 
TypeSet< BinIDnodes_
 
int nrgeomchangecbs_ = 0
 
int oldstyledoubleclicked_ = 0
 
int originalresolution_ = -1
 
RefMan< visBase::TexturePanelStrippanelstrip_
 
int pickstartnodeidx_ = -1
 
RefMan< visBase::PolyLinepolyline_
 
bool polylinemode_ = false
 
TypeSet< VisID > * premovingselids_ = nullptr
 
RefMan< Geometry::RandomLinerl_
 
TypeSet< int > segments_
 
int selnodeidx_ = mUdf(int)
 
RefObjectSet< RandomSeisDataPacktransfdatapacks_
 
TrcKeySet trckeypath_
 
UpdateStageInfo updatestageinfo_
 
int voiidx_ = -1
 
- Protected Attributes inherited from visSurvey::MultiTextureSurveyObject
RefMan< visBase::TextureChannelschannels_
 
int resolution_ = 0
 
- Protected Attributes inherited from visBase::VisualObjectImpl
RefMan< Materialmaterial_
 
bool righthandsystem_ = true
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 
- Protected Attributes inherited from visSurvey::SurveyObject
BufferString errmsg_
 
bool locked_ = false
 
ConstRefMan< Survey::Geometry3Ds3dgeom_
 
bool saveinsessionsflag_ = true
 
Scenescene_ = nullptr
 
BufferString survname_
 
int updatestagenr_ = 0
 
ObjectSet< BufferStringSetuserrefs_
 
bool usestexture_ = true
 
bool validtexture_ = false
 

Additional Inherited Members

- Public Types inherited from ObjectWithName
typedef OD::String name_type
 
- Public Types inherited from visSurvey::SurveyObject
enum  AttribFormat {
  None , Cube , Traces , RandomPos ,
  OtherFormat
}
 

Detailed Description

Used for displaying a random or arbitrary line.

RandomTrackDisplay is the front-end class for displaying arbitrary lines. The complete line consists of separate sections connected at inline/crossline positions, called knots or nodes. Several functions are available for adding or inserting node positions. The depth range of the line can be changed by setDepthInterval(const Interval<float>&)

<>

Constructor & Destructor Documentation

◆ RandomTrackDisplay()

visSurvey::RandomTrackDisplay::RandomTrackDisplay ( )

◆ ~RandomTrackDisplay()

visSurvey::RandomTrackDisplay::~RandomTrackDisplay ( )
protected

Member Function Documentation

◆ acceptManipulation()

void visSurvey::RandomTrackDisplay::acceptManipulation ( )
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ addCache()

void visSurvey::RandomTrackDisplay::addCache ( )
overrideprotectedvirtual

◆ addNode() [1/2]

void visSurvey::RandomTrackDisplay::addNode ( const BinID & )

◆ addNode() [2/2]

void visSurvey::RandomTrackDisplay::addNode ( int nodenr)

If nodenr<nrNodes, a node is added before the nodenr. If nodenr==nrNodes, a node is added at the end.

◆ addNodeInternal()

void visSurvey::RandomTrackDisplay::addNodeInternal ( const BinID & )
protected

◆ allowMaterialEdit()

bool visSurvey::RandomTrackDisplay::allowMaterialEdit ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ allowsPicks()

bool visSurvey::RandomTrackDisplay::allowsPicks ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ annotateNextUpdateStage()

void visSurvey::RandomTrackDisplay::annotateNextUpdateStage ( bool yn)
overridevirtual

Annotation to enumerate distinguishable stages in an update sequence. False resets updatestagenr_ to zero. For example: no updating #0 annotateNextUpdateStage( true ); update geometry #1 annotateNextUpdateStage( true ); update textures #2 annotateNextUpdateStage( false ); no updating #0 Derived class decides whether to neglect or act, e.g. by (de/re)freezing its display.

Reimplemented from visSurvey::SurveyObject.

◆ appliedZRangeStep()

float visSurvey::RandomTrackDisplay::appliedZRangeStep ( ) const
protected

◆ calcDist()

float visSurvey::RandomTrackDisplay::calcDist ( const Coord3 & ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ canAddNode()

bool visSurvey::RandomTrackDisplay::canAddNode ( int nodenr) const

If nodenr<nrNodes the function Checks if a node can be added before the nodenr. If nodenr==nrNodes, it checks if a node can be added.

◆ canBDispOn2DViewer()

bool visSurvey::RandomTrackDisplay::canBDispOn2DViewer ( ) const
inlineoverridevirtual

◆ canDuplicate()

bool visSurvey::RandomTrackDisplay::canDuplicate ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ canResetManipulation()

bool visSurvey::RandomTrackDisplay::canResetManipulation ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ checkPosition()

bool visSurvey::RandomTrackDisplay::checkPosition ( const BinID & ) const
protected

◆ checkValidPick()

bool visSurvey::RandomTrackDisplay::checkValidPick ( const visBase::EventInfo & ,
const Coord3 & pos ) const
protected

◆ createFromPolyLine()

bool visSurvey::RandomTrackDisplay::createFromPolyLine ( )

◆ createTransformedDataPack()

void visSurvey::RandomTrackDisplay::createTransformedDataPack ( int attrib,
TaskRunner * = nullptr )
protected

◆ dataTransformCB()

void visSurvey::RandomTrackDisplay::dataTransformCB ( CallBacker * )
protected

◆ draggerMoveFinished()

void visSurvey::RandomTrackDisplay::draggerMoveFinished ( CallBacker * )
protected

◆ draggerRightClick()

void visSurvey::RandomTrackDisplay::draggerRightClick ( CallBacker * )
protected

◆ duplicate()

SurveyObject * visSurvey::RandomTrackDisplay::duplicate ( TaskRunner * ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ emptyCache()

void visSurvey::RandomTrackDisplay::emptyCache ( int )
overrideprotectedvirtual

◆ errMsg()

const char * visSurvey::RandomTrackDisplay::errMsg ( ) const
inlineoverridevirtual

◆ fillPar()

void visSurvey::RandomTrackDisplay::fillPar ( IOPar & ) const
overridevirtual

◆ finishNodeMoveInternal()

void visSurvey::RandomTrackDisplay::finishNodeMoveInternal ( )
protected

◆ geomChangeCB()

void visSurvey::RandomTrackDisplay::geomChangeCB ( CallBacker * )
protected

◆ geomNodeMoveCB()

void visSurvey::RandomTrackDisplay::geomNodeMoveCB ( CallBacker * )
protected

◆ getAllNodePos() [1/2]

void visSurvey::RandomTrackDisplay::getAllNodePos ( TrcKeySet & ) const

◆ getAllNodePos() [2/2]

void visSurvey::RandomTrackDisplay::getAllNodePos ( TypeSet< BinID > & ) const

◆ getAttributeFormat()

SurveyObject::AttribFormat visSurvey::RandomTrackDisplay::getAttributeFormat ( int attrib) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getCacheValue()

bool visSurvey::RandomTrackDisplay::getCacheValue ( int attrib,
int version,
const Coord3 & ,
float &  ) const
overrideprotectedvirtual

Coord is in attribute space.

Implements visSurvey::MultiTextureSurveyObject.

◆ getClosestPanelIdx() [1/2]

int visSurvey::RandomTrackDisplay::getClosestPanelIdx ( const Coord & ) const

◆ getClosestPanelIdx() [2/2]

int visSurvey::RandomTrackDisplay::getClosestPanelIdx ( const Coord & ,
double * fracptr ) const
protected

◆ getDataPack()

ConstRefMan< DataPack > visSurvey::RandomTrackDisplay::getDataPack ( int attrib) const
overrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

◆ getDataTraceRange()

Interval< float > visSurvey::RandomTrackDisplay::getDataTraceRange ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getDepthInterval()

Interval< float > visSurvey::RandomTrackDisplay::getDepthInterval ( ) const

◆ getDisplayedVolumeDataPack() [1/2]

RefMan< VolumeDataPack > visSurvey::RandomTrackDisplay::getDisplayedVolumeDataPack ( int attrib)

◆ getDisplayedVolumeDataPack() [2/2]

ConstRefMan< VolumeDataPack > visSurvey::RandomTrackDisplay::getDisplayedVolumeDataPack ( int attrib) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getDisplayTransformation()

const mVisTrans * visSurvey::RandomTrackDisplay::getDisplayTransformation ( ) const
overridevirtual

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 from visBase::DataObject.

◆ getManipNodePos()

BinID visSurvey::RandomTrackDisplay::getManipNodePos ( int ) const

◆ getManipulationNotifier()

NotifierAccess * visSurvey::RandomTrackDisplay::getManipulationNotifier ( )
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getManipulationString()

uiString visSurvey::RandomTrackDisplay::getManipulationString ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getMouseCursor()

const MouseCursor * visSurvey::RandomTrackDisplay::getMouseCursor ( ) const
inlineoverridevirtual

Returns a mouse cursor that will be used if this object under the mouse in Act mode.

Reimplemented from visSurvey::SurveyObject.

◆ getMousePosInfo() [1/2]

void visSurvey::RandomTrackDisplay::getMousePosInfo ( const visBase::EventInfo & ,
Coord3 & ,
BufferString & ,
uiString &  ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getMousePosInfo() [2/2]

void visSurvey::RandomTrackDisplay::getMousePosInfo ( const visBase::EventInfo & ,
IOPar &  ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getMovementNotifier()

NotifierAccess * visSurvey::RandomTrackDisplay::getMovementNotifier ( )
inlineoverridevirtual

Gives access to a notifier that is triggered when object is moved or modified.

Reimplemented from visSurvey::SurveyObject.

◆ getMultiID()

MultiID visSurvey::RandomTrackDisplay::getMultiID ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getNodePos()

BinID visSurvey::RandomTrackDisplay::getNodePos ( int ) const

◆ getNodes()

TypeSet< BinID > * visSurvey::RandomTrackDisplay::getNodes ( )
inline

◆ getNormal()

Coord3 visSurvey::RandomTrackDisplay::getNormal ( const Coord3 & pos) const
overridevirtual

Position and Normal are both in displayspace.

Reimplemented from visSurvey::SurveyObject.

◆ getObjectInfo()

void visSurvey::RandomTrackDisplay::getObjectInfo ( uiString & ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ getRandomLine() [1/2]

Geometry::RandomLine * visSurvey::RandomTrackDisplay::getRandomLine ( )

◆ getRandomLine() [2/2]

const Geometry::RandomLine * visSurvey::RandomTrackDisplay::getRandomLine ( ) const

◆ getRandomLineID()

RandomLineID visSurvey::RandomTrackDisplay::getRandomLineID ( ) const

◆ getRandomLineName()

BufferString visSurvey::RandomTrackDisplay::getRandomLineName ( ) const

◆ getSelMousePosInfo()

bool visSurvey::RandomTrackDisplay::getSelMousePosInfo ( const visBase::EventInfo & ,
Coord3 & ,
BufferString & ,
uiString &  ) const

◆ getSelNodeIdx()

int visSurvey::RandomTrackDisplay::getSelNodeIdx ( ) const
inline

knotidx>=0, panelidx<0

◆ getTexturePanelStrip() [1/2]

visBase::TexturePanelStrip * visSurvey::RandomTrackDisplay::getTexturePanelStrip ( )

◆ getTexturePanelStrip() [2/2]

const visBase::TexturePanelStrip * visSurvey::RandomTrackDisplay::getTexturePanelStrip ( ) const

◆ getTraceKeyPath()

void visSurvey::RandomTrackDisplay::getTraceKeyPath ( TrcKeySet & ,
TypeSet< Coord > *  ) const
overridevirtual

If Coordinates are different from the trckeys, they can be delivered in the TypeSet<Coord>*

Reimplemented from visSurvey::SurveyObject.

◆ getTrcKeyPath()

const TrcKeySet * visSurvey::RandomTrackDisplay::getTrcKeyPath ( ) const
inline

◆ getTrcKeyZSampling()

TrcKeyZSampling visSurvey::RandomTrackDisplay::getTrcKeyZSampling ( bool displayspace,
int attrib ) const
overridevirtual
Returns
the volume in world survey coordinates.

Reimplemented from visSurvey::SurveyObject.

◆ getTrueCoords()

TypeSet< Coord > visSurvey::RandomTrackDisplay::getTrueCoords ( ) const

◆ getVolumeDataPack() [1/2]

RefMan< VolumeDataPack > visSurvey::RandomTrackDisplay::getVolumeDataPack ( int attrib)
protected

◆ getVolumeDataPack() [2/2]

ConstRefMan< VolumeDataPack > visSurvey::RandomTrackDisplay::getVolumeDataPack ( int attrib) const
overrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

◆ getZAxisTransform()

const ZAxisTransform * visSurvey::RandomTrackDisplay::getZAxisTransform ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ hasCache()

bool visSurvey::RandomTrackDisplay::hasCache ( int ) const
overrideprotectedvirtual

◆ hasPosModeManipulator()

bool visSurvey::RandomTrackDisplay::hasPosModeManipulator ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ insertNode()

void visSurvey::RandomTrackDisplay::insertNode ( int ,
const BinID &  )

◆ insertNodeInternal()

void visSurvey::RandomTrackDisplay::insertNodeInternal ( int ,
const BinID &  )
protected

◆ isGeometryLocked()

bool visSurvey::RandomTrackDisplay::isGeometryLocked ( ) const

◆ isInlCrl()

bool visSurvey::RandomTrackDisplay::isInlCrl ( ) const
inlineoverridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ isManipulated()

bool visSurvey::RandomTrackDisplay::isManipulated ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ isManipulatorShown()

bool visSurvey::RandomTrackDisplay::isManipulatorShown ( ) const
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ isMappingTraceOfBid()

bool visSurvey::RandomTrackDisplay::isMappingTraceOfBid ( BinID bid,
int trcidx,
bool forward = true ) const
protected

◆ isPicking()

bool visSurvey::RandomTrackDisplay::isPicking ( ) const
overrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

◆ lockGeometry()

void visSurvey::RandomTrackDisplay::lockGeometry ( bool )

◆ mouseCB()

void visSurvey::RandomTrackDisplay::mouseCB ( CallBacker * )
protected

◆ movingNodeInternal()

void visSurvey::RandomTrackDisplay::movingNodeInternal ( int selnodeidx)
protected

◆ nameNr()

int visSurvey::RandomTrackDisplay::nameNr ( ) const
inline
Returns
a number that is unique for this rtd, and is present in its name.

◆ nodeMoved()

void visSurvey::RandomTrackDisplay::nodeMoved ( CallBacker * )
protected

◆ nrNodes()

int visSurvey::RandomTrackDisplay::nrNodes ( ) const

◆ nrResolutions()

int visSurvey::RandomTrackDisplay::nrResolutions ( ) const
inlineoverridevirtual

◆ pickCB()

void visSurvey::RandomTrackDisplay::pickCB ( CallBacker * )
protected

◆ proposeNewPos()

BinID visSurvey::RandomTrackDisplay::proposeNewPos ( int node) const
protected

◆ removeAllNodes()

void visSurvey::RandomTrackDisplay::removeAllNodes ( )

◆ removeCache()

void visSurvey::RandomTrackDisplay::removeCache ( int )
overrideprotectedvirtual

◆ removeNode()

void visSurvey::RandomTrackDisplay::removeNode ( int )

◆ removeNodeInternal()

void visSurvey::RandomTrackDisplay::removeNodeInternal ( int )
protected

◆ removePickPos() [1/2]

void visSurvey::RandomTrackDisplay::removePickPos ( const Coord3 & )
protected

◆ removePickPos() [2/2]

void visSurvey::RandomTrackDisplay::removePickPos ( int polyidx)
protected

◆ resetManipulation()

void visSurvey::RandomTrackDisplay::resetManipulation ( )
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ setColor()

void visSurvey::RandomTrackDisplay::setColor ( OD::Color )
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ setDepthInterval()

void visSurvey::RandomTrackDisplay::setDepthInterval ( const Interval< float > & )

◆ setDisplayTransformation()

void visSurvey::RandomTrackDisplay::setDisplayTransformation ( const mVisTrans * )
override

◆ setNodePos() [1/2]

void visSurvey::RandomTrackDisplay::setNodePos ( int ,
const BinID &  )

◆ setNodePos() [2/2]

void visSurvey::RandomTrackDisplay::setNodePos ( int ,
const BinID & ,
bool check )
protected

◆ setNodePositions() [1/2]

bool visSurvey::RandomTrackDisplay::setNodePositions ( const TypeSet< BinID > & )

◆ setNodePositions() [2/2]

void visSurvey::RandomTrackDisplay::setNodePositions ( const TypeSet< BinID > & ,
bool onlyinternal )
protected

◆ setPanelStripZRange()

void visSurvey::RandomTrackDisplay::setPanelStripZRange ( const Interval< float > & )
protected

◆ setPickPos()

void visSurvey::RandomTrackDisplay::setPickPos ( const Coord3 & pos)
protected

◆ setPixelDensity()

void visSurvey::RandomTrackDisplay::setPixelDensity ( float )
overridevirtual

Reimplemented from visBase::DataObject.

◆ setPolyLineMode()

void visSurvey::RandomTrackDisplay::setPolyLineMode ( bool yn)

◆ setRandomLineID()

void visSurvey::RandomTrackDisplay::setRandomLineID ( const RandomLineID & )

◆ setResolution()

void visSurvey::RandomTrackDisplay::setResolution ( int ,
TaskRunner *  )
overridevirtual

◆ setSceneEventCatcher()

void visSurvey::RandomTrackDisplay::setSceneEventCatcher ( visBase::EventCatcher * )
overridevirtual

Reimplemented from visBase::VisualObject.

◆ setVolumeDataPack()

bool visSurvey::RandomTrackDisplay::setVolumeDataPack ( int attrib,
VolumeDataPack * ,
TaskRunner *  )
overrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

◆ setZAxisTransform()

bool visSurvey::RandomTrackDisplay::setZAxisTransform ( ZAxisTransform * ,
TaskRunner *  )
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ showManipulator()

void visSurvey::RandomTrackDisplay::showManipulator ( bool )
overridevirtual

Reimplemented from visSurvey::SurveyObject.

◆ sKeyDepthInterval()

static const char * visSurvey::RandomTrackDisplay::sKeyDepthInterval ( )
staticprotected

◆ sKeyKnotPrefix()

static const char * visSurvey::RandomTrackDisplay::sKeyKnotPrefix ( )
staticprotected

◆ sKeyLockGeometry()

static const char * visSurvey::RandomTrackDisplay::sKeyLockGeometry ( )
staticprotected

◆ sKeyNrKnots()

static const char * visSurvey::RandomTrackDisplay::sKeyNrKnots ( )
staticprotected

◆ sKeyPanelDepthKey()

static const char * visSurvey::RandomTrackDisplay::sKeyPanelDepthKey ( )
inlinestatic

◆ sKeyPanelPlaneKey()

static const char * visSurvey::RandomTrackDisplay::sKeyPanelPlaneKey ( )
inlinestatic

◆ sKeyPanelRotateKey()

static const char * visSurvey::RandomTrackDisplay::sKeyPanelRotateKey ( )
inlinestatic

◆ sKeyTrack()

static const char * visSurvey::RandomTrackDisplay::sKeyTrack ( )
staticprotected

◆ snapPosition()

BinID visSurvey::RandomTrackDisplay::snapPosition ( const BinID & ) const
protected

◆ snapZRange()

void visSurvey::RandomTrackDisplay::snapZRange ( Interval< float > & )
protected

◆ swapCache()

void visSurvey::RandomTrackDisplay::swapCache ( int ,
int  )
overrideprotectedvirtual

◆ updateChannels()

void visSurvey::RandomTrackDisplay::updateChannels ( int attrib,
TaskRunner *  )
protected

◆ updateMouseCursorCB()

void visSurvey::RandomTrackDisplay::updateMouseCursorCB ( CallBacker * )
overrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

◆ updatePanelStripPath()

void visSurvey::RandomTrackDisplay::updatePanelStripPath ( )
protected

◆ updatePath()

void visSurvey::RandomTrackDisplay::updatePath ( )
protected

◆ updateRanges()

void visSurvey::RandomTrackDisplay::updateRanges ( bool ,
bool  )
protected

◆ updateTexOriginAndScale()

void visSurvey::RandomTrackDisplay::updateTexOriginAndScale ( int attrib,
const TrcKeySet & ,
const ZSampling &  )
protected

◆ usePar()

bool visSurvey::RandomTrackDisplay::usePar ( const IOPar & )
overridevirtual

◆ usesDataPacks()

bool visSurvey::RandomTrackDisplay::usesDataPacks ( ) const
inlineoverrideprotectedvirtual

Reimplemented from visSurvey::SurveyObject.

Member Data Documentation

◆ datapacks_

RefObjectSet<RandomSeisDataPack> visSurvey::RandomTrackDisplay::datapacks_
protected

◆ datatransform_

RefMan<ZAxisTransform> visSurvey::RandomTrackDisplay::datatransform_
protected

◆ depthrg_

Interval<float> visSurvey::RandomTrackDisplay::depthrg_
protected

◆ dragger_

RefMan<visBase::RandomTrackDragger> visSurvey::RandomTrackDisplay::dragger_
protected

◆ eventcatcher_

RefMan<visBase::EventCatcher> visSurvey::RandomTrackDisplay::eventcatcher_
protected

◆ geomnodejustmoved_

bool visSurvey::RandomTrackDisplay::geomnodejustmoved_ = false
protected

◆ interactivetexturedisplay_

bool visSurvey::RandomTrackDisplay::interactivetexturedisplay_ = false
protected

◆ ismanip_

bool visSurvey::RandomTrackDisplay::ismanip_ = false
protected

◆ ispicking_

bool visSurvey::RandomTrackDisplay::ispicking_ = false
protected

◆ lockgeometry_

bool visSurvey::RandomTrackDisplay::lockgeometry_ = false
protected

◆ markerset_

RefMan<visBase::MarkerSet> visSurvey::RandomTrackDisplay::markerset_
protected

◆ mousecursor_

MouseCursor visSurvey::RandomTrackDisplay::mousecursor_
protected

◆ moving_

Notifier<RandomTrackDisplay> visSurvey::RandomTrackDisplay::moving_

◆ namenr_

int visSurvey::RandomTrackDisplay::namenr_
protected

◆ nodemoving_

Notifier<RandomTrackDisplay> visSurvey::RandomTrackDisplay::nodemoving_

◆ nodes_

TypeSet<BinID> visSurvey::RandomTrackDisplay::nodes_
protected

◆ nrgeomchangecbs_

int visSurvey::RandomTrackDisplay::nrgeomchangecbs_ = 0
protected

◆ oldstyledoubleclicked_

int visSurvey::RandomTrackDisplay::oldstyledoubleclicked_ = 0
protected

◆ originalresolution_

int visSurvey::RandomTrackDisplay::originalresolution_ = -1
protected

◆ panelstrip_

RefMan<visBase::TexturePanelStrip> visSurvey::RandomTrackDisplay::panelstrip_
protected

◆ pickstartnodeidx_

int visSurvey::RandomTrackDisplay::pickstartnodeidx_ = -1
protected

◆ polyline_

RefMan<visBase::PolyLine> visSurvey::RandomTrackDisplay::polyline_
protected

◆ polylinemode_

bool visSurvey::RandomTrackDisplay::polylinemode_ = false
protected

◆ premovingselids_

TypeSet<VisID>* visSurvey::RandomTrackDisplay::premovingselids_ = nullptr
protected

◆ rl_

RefMan<Geometry::RandomLine> visSurvey::RandomTrackDisplay::rl_
protected

◆ segments_

TypeSet<int> visSurvey::RandomTrackDisplay::segments_
protected

◆ selnodeidx_

int visSurvey::RandomTrackDisplay::selnodeidx_ = mUdf(int)
protected

◆ transfdatapacks_

RefObjectSet<RandomSeisDataPack> visSurvey::RandomTrackDisplay::transfdatapacks_
protected

◆ trckeypath_

TrcKeySet visSurvey::RandomTrackDisplay::trckeypath_
protected

◆ updatestageinfo_

UpdateStageInfo visSurvey::RandomTrackDisplay::updatestageinfo_
protected

◆ voiidx_

int visSurvey::RandomTrackDisplay::voiidx_ = -1
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2025