OpendTect 8.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
Survey::GeometryManager Class Reference

Makes geometries accessible from a geometry ID, or a MultiID.
More...

#include <survgeom.h>

Inheritance diagram for Survey::GeometryManager:
[legend]

Public Member Functions

 GeometryManager ()
 
 ~GeometryManager ()
 
Pos::GeomID addNewEntry (Geometry *, uiString &)
 
Pos::GeomID default2DGeomID () const
 
TrcKey::SurvID default3DSurvID () const
 
void ensureSIPresent ()
 
bool fetchFrom2DGeom (uiString &errmsg)
 
bool fillGeometries (TaskRunner *)
 
Pos::GeomID findRelated (const Geometry &, Geometry::RelationType &, bool usezrg) const
 Returns GeomID::udf() if none found.
 
Geometry2Dget2D (const Pos::GeomID &)
 
const Geometry2Dget2D (const Pos::GeomID &) const
 
const GeometrygetGeometry (const char *) const
 
const GeometrygetGeometry (const MultiID &) const
 
GeometrygetGeometry (const Pos::GeomID &)
 
const GeometrygetGeometry (const Pos::GeomID &) const
 
const Geometry3DgetGeometry3D (OD::GeomSystem) const
 
Pos::GeomID getGeomID (const char *linenm) const
 
Pos::GeomID getGeomID (const char *lsm, const char *linenm) const
 
bool getList (BufferStringSet &names, TypeSet< Pos::GeomID > &ids, bool is2d) const
 
const char * getName (const Pos::GeomID &) const
 
bool has2D () const
 
bool isUsable (const Pos::GeomID &) const
 
TrcKey nearestTrace (const Coord &, bool is2d, float *dist=nullptr) const
 
TrcKey nearestTrace (const TypeSet< Pos::GeomID > &, const Coord &, float *dist=nullptr) const
 
int nrGeometries () const
 
bool removeGeometry (const Pos::GeomID &)
 
Coord toCoord (const TrcKey &) const
 
TrcKey traceKey (Pos::GeomID, Pos::LineID, Pos::TraceID) const
 For 3D.
 
TrcKey traceKey (Pos::GeomID, Pos::TraceID) const
 For 2D.
 
bool updateGeometries (TaskRunner *)
 
bool write (Geometry &, uiString &)
 
StepInterval< float > zRange (const Pos::GeomID &) 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 ()
 

Static Public Member Functions

static Pos::GeomID cUndefGeomID ()
 
static TrcKey::SurvID get2DSurvID ()
 
static TrcKey::SurvID get3DSurvID ()
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Public Attributes

Notifier< GeometryManagerclosing
 
Notifier< GeometryManagergeometryRead
 

Protected Member Functions

void addGeometry (Geometry &)
 
const GeometrygetGeometry (OD::GeomSystem) const =delete
 
bool hasDuplicateLineNames ()
 
int indexOf (const Pos::GeomID &) const
 

Protected Attributes

RefObjectSet< Geometrygeometries_
 
bool hasduplnms_ = false
 
Threads::Lock lock_
 

Private Attributes

std::unordered_map< int, int > geomidmap_
 
std::unordered_map< std::string, int > namemap_
 

Detailed Description

Makes geometries accessible from a geometry ID, or a MultiID.

<>

Constructor & Destructor Documentation

◆ GeometryManager()

Survey::GeometryManager::GeometryManager ( )

◆ ~GeometryManager()

Survey::GeometryManager::~GeometryManager ( )

Member Function Documentation

◆ addGeometry()

void Survey::GeometryManager::addGeometry ( Geometry & )
protected

◆ addNewEntry()

Pos::GeomID Survey::GeometryManager::addNewEntry ( Geometry * ,
uiString &  )

◆ cUndefGeomID()

static Pos::GeomID Survey::GeometryManager::cUndefGeomID ( )
inlinestatic

◆ default2DGeomID()

Pos::GeomID Survey::GeometryManager::default2DGeomID ( ) const

◆ default3DSurvID()

TrcKey::SurvID Survey::GeometryManager::default3DSurvID ( ) const
inline

◆ ensureSIPresent()

void Survey::GeometryManager::ensureSIPresent ( )

◆ fetchFrom2DGeom()

bool Survey::GeometryManager::fetchFrom2DGeom ( uiString & errmsg)

◆ fillGeometries()

bool Survey::GeometryManager::fillGeometries ( TaskRunner * )

Admin functions: Use the following functions only when you know what you are doing.

◆ findRelated()

Pos::GeomID Survey::GeometryManager::findRelated ( const Geometry & ,
Geometry::RelationType & ,
bool usezrg ) const

Returns GeomID::udf() if none found.

◆ get2D() [1/2]

Geometry2D & Survey::GeometryManager::get2D ( const Pos::GeomID & )

◆ get2D() [2/2]

const Geometry2D & Survey::GeometryManager::get2D ( const Pos::GeomID & ) const

◆ get2DSurvID()

static TrcKey::SurvID Survey::GeometryManager::get2DSurvID ( )
inlinestatic

◆ get3DSurvID()

static TrcKey::SurvID Survey::GeometryManager::get3DSurvID ( )
inlinestatic

◆ getGeometry() [1/5]

const Geometry * Survey::GeometryManager::getGeometry ( const char * ) const

◆ getGeometry() [2/5]

const Geometry * Survey::GeometryManager::getGeometry ( const MultiID & ) const

◆ getGeometry() [3/5]

Geometry * Survey::GeometryManager::getGeometry ( const Pos::GeomID & )

◆ getGeometry() [4/5]

const Geometry * Survey::GeometryManager::getGeometry ( const Pos::GeomID & ) const

◆ getGeometry() [5/5]

const Geometry * Survey::GeometryManager::getGeometry ( OD::GeomSystem ) const
protecteddelete

◆ getGeometry3D()

const Geometry3D * Survey::GeometryManager::getGeometry3D ( OD::GeomSystem ) const

◆ getGeomID() [1/2]

Pos::GeomID Survey::GeometryManager::getGeomID ( const char * linenm) const

◆ getGeomID() [2/2]

Pos::GeomID Survey::GeometryManager::getGeomID ( const char * lsm,
const char * linenm ) const

Use only if you are converting od4 geometries to od5 geometries

◆ getList()

bool Survey::GeometryManager::getList ( BufferStringSet & names,
TypeSet< Pos::GeomID > & ids,
bool is2d ) const

◆ getName()

const char * Survey::GeometryManager::getName ( const Pos::GeomID & ) const

◆ has2D()

bool Survey::GeometryManager::has2D ( ) const

◆ hasDuplicateLineNames()

bool Survey::GeometryManager::hasDuplicateLineNames ( )
protected

◆ indexOf()

int Survey::GeometryManager::indexOf ( const Pos::GeomID & ) const
protected

◆ isUsable()

bool Survey::GeometryManager::isUsable ( const Pos::GeomID & ) const

◆ nearestTrace() [1/2]

TrcKey Survey::GeometryManager::nearestTrace ( const Coord & ,
bool is2d,
float * dist = nullptr ) const

◆ nearestTrace() [2/2]

TrcKey Survey::GeometryManager::nearestTrace ( const TypeSet< Pos::GeomID > & ,
const Coord & ,
float * dist = nullptr ) const

◆ nrGeometries()

int Survey::GeometryManager::nrGeometries ( ) const

◆ removeGeometry()

bool Survey::GeometryManager::removeGeometry ( const Pos::GeomID & )

Returns new GeomID.

◆ toCoord()

Coord Survey::GeometryManager::toCoord ( const TrcKey & ) const

◆ traceKey() [1/2]

TrcKey Survey::GeometryManager::traceKey ( Pos::GeomID ,
Pos::LineID ,
Pos::TraceID  ) const

For 3D.

◆ traceKey() [2/2]

TrcKey Survey::GeometryManager::traceKey ( Pos::GeomID ,
Pos::TraceID  ) const

For 2D.

◆ updateGeometries()

bool Survey::GeometryManager::updateGeometries ( TaskRunner * )

◆ write()

bool Survey::GeometryManager::write ( Geometry & ,
uiString &  )

◆ zRange()

StepInterval< float > Survey::GeometryManager::zRange ( const Pos::GeomID & ) const

Member Data Documentation

◆ closing

Notifier<GeometryManager> Survey::GeometryManager::closing

◆ geometries_

RefObjectSet<Geometry> Survey::GeometryManager::geometries_
protected

◆ geometryRead

Notifier<GeometryManager> Survey::GeometryManager::geometryRead

◆ geomidmap_

std::unordered_map<int,int> Survey::GeometryManager::geomidmap_
private

◆ hasduplnms_

bool Survey::GeometryManager::hasduplnms_ = false
protected

◆ lock_

Threads::Lock Survey::GeometryManager::lock_
mutableprotected

◆ namemap_

std::unordered_map<std::string,int> Survey::GeometryManager::namemap_
private

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