OpendTect  7.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Friends | List of all members
visBase::TextureChannels Class Reference
Inheritance diagram for visBase::TextureChannels:
[legend]

Public Member Functions

 TextureChannels ()
 
int addChannel ()
 
int currentVersion (int channel) const
 
void enableTextureInterpolation (bool)
 
const SbImagei32 * getChannels () const
 
TextureChannel2RGBAgetChannels2RGBA ()
 
const TextureChannel2RGBAgetChannels2RGBA () const
 
virtual const char * getClassName () const override
 
const ColTab::MappergetColTabMapper (int channel, int version) const
 
const ColTab::MapperSetupgetColTabMapperSetup (int channel, int version) const
 
StepInterval< float > getEnvelopeRange (unsigned char dim) const
 
const TypeSet< float > * getHistogram (int channel) const
 
int getNonShaderResolution () const
 
int getNrComponents (int channel) const
 
const CoordgetOrigin (int channel) const
 
const TypeSet< int > * getOsgIDs (int channel) const
 
osgGeo::LayeredTexture * getOsgTexture ()
 
const osgGeo::LayeredTexture * getOsgTexture () const
 
const CoordgetScale (int channel) const
 
int getSize (int channel, unsigned char dim) const
 
int insertChannel (int)
 
bool isCurrentDataPremapped (int channel) const
 
bool isOn () const override
 
int nrChannels () const
 
unsigned char nrDataBands () const
 
unsigned char nrTextureBands () const
 
unsigned char nrUdfBands () const
 
int nrVersions (int channel) const
 
void reMapData (int channel, bool dontreclip, TaskRunner *)
 
void removeChannel (int)
 
bool setChannels2RGBA (TextureChannel2RGBA *)
 
void setColTabMapperSetup (int channel, const ColTab::MapperSetup &)
 Will not trigger a remap, use reMapData. More...
 
void setCurrentVersion (int channel, int version)
 
bool setMappedData (int channel, int version, unsigned char *, OD::PtrPolicy)
 
void setNonShaderResolution (int)
 
void setNrComponents (int channel, int nrcomp)
 
void setNrVersions (int channel, int nrvers)
 
void setOrigin (int channel, const Coord &origin)
 
void setScale (int channel, const Coord &scale)
 
void setSize (int channel, int sz0, int sz1, int sz2)
 
bool setUnMappedData (int channel, int version, const float *, OD::PtrPolicy, TaskRunner *, bool skipclip=false)
 
bool setUnMappedVSData (int channel, int version, const ValueSeries< float > *, OD::PtrPolicy, TaskRunner *, bool skipclip=false)
 
void swapChannels (int, int)
 
bool textureInterpolationEnabled () const
 
void touchMappedData ()
 
bool turnOn (bool yn) override
 
void unfreezeOldData (int channel)
 
- Public Member Functions inherited from visBase::DataObject
template<class T >
T * addNodeState (T *ns)
 
void deSelect () const
 
virtual NotifierAccessdeSelection ()
 
void enableTraversal (unsigned int mask, bool yn=true)
 
virtual const char * errMsg () const
 
virtual const visBase::TransformationgetDisplayTransformation () 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 isRightHandSystem () 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
 
virtual NotifierAccessrightClicked ()
 
virtual const TypeSet< VisID > * rightClickedPath () const
 
void select () const
 
virtual bool selectable () const
 
virtual NotifierAccessselection ()
 
bool serialize (const char *filename, bool binary=false)
 
virtual void setDisplayTransformation (const visBase::Transformation *)
 
void setID (VisID newid)
 
void setName (const char *) override
 
void setName (const uiString &uistr)
 
void setParent (DataObjectGroup *g)
 
void setPickable (bool actively, bool passively=true)
 
virtual void setPixelDensity (float dpi)
 
virtual void setRightHandSystem (bool yn)
 
void setUiName (const uiString &)
 
uiString uiName () const
 
void updateSel () const
 
- Public Member Functions inherited from SharedObject
 SharedObject (const char *nm=nullptr)
 
 SharedObject (const SharedObject &)
 
- Public Member Functions inherited from NamedCallBacker
 NamedCallBacker (const char *nm=0)
 
 NamedCallBacker (const NamedCallBacker &)
 
virtual Notifier< NamedCallBacker > & objectToBeDeleted () const
 
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. More...
 
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. More...
 
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 &)
 
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. More...
 
int nrRefs () const
 Only for expert use. More...
 
void ref () const
 
bool refIfReffed () const
 Don't use in production, for debugging. More...
 
void removeObserver (WeakPtrBase *obs)
 Not for normal use. May become private. More...
 
bool tryRef () const
 Not for normal use. May become private. More...
 
void unRef () const
 
void unRefNoDelete () const
 

Static Public Member Functions

static TextureChannelscreate ()
 
static const char * getStaticClassName ()
 
static void initClass ()
 
static const char * sFactoryKeyword ()
 
- 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. More...
 
- 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

 ~TextureChannels ()
 
void update (ChannelInfo *)
 
void update (int channel, bool freezeifnodata=true)
 
- Protected Member Functions inherited from visBase::DataObject
 DataObject ()
 
virtual ~DataObject ()
 
void doAddNodeState (NodeState *ns)
 
virtual osg::StateSet * getStateSet ()
 
template<class T >
T * setOsgNode (T *t)
 Must be called during construction. More...
 
virtual void triggerDeSel ()
 
virtual void triggerRightClick (const EventInfo *=nullptr)
 
virtual void triggerSel ()
 
void updateNodemask ()
 
- Protected Member Functions inherited from SharedObject
virtual ~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 Attributes

ObjectSet< ChannelInfochannelinfo_
 
bool interpolatetexture_ = true
 
osgGeo::LayeredTexture * osgtexture_
 
TextureChannel2RGBAtc2rgba_ = nullptr
 
TextureCallbackHandler * texturecallbackhandler_
 
- Protected Attributes inherited from visBase::DataObject
DataObjectGroupparent_
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Private Member Functions

 TextureChannels (const TextureChannels &)
 
TextureChannelsoperator= (const TextureChannels &)
 

Static Private Member Functions

static visBase::DataObjectcreateInternal ()
 

Friends

class ChannelInfo
 

Additional Inherited Members

- Public Types inherited from ObjectWithName
typedef OD::String name_type
 

Detailed Description

Base class to manage the set of interchangeable and overlayable data layers from which the texture displayed on some kind of section will be assembled dynamically.

Different attributes are stored in different channels. Each channel may have multiple versions, for example obtained with different parameter settings of the attribute.

Each channel may consist of different components. Each component corresponds with one data layer. Multiple components are not yet used.

Every component may utilize up to four bands in the image that stores the data. The first band contains the data values itself. Additional bands are used to to improve the quality of the displayed texture. One band is used to denote undefined values separate from the actual signal. Other band(s) for example store the instantaneous power of the signal.

<>

Constructor & Destructor Documentation

◆ TextureChannels() [1/2]

visBase::TextureChannels::TextureChannels ( const TextureChannels )
private

◆ TextureChannels() [2/2]

visBase::TextureChannels::TextureChannels ( )

◆ ~TextureChannels()

visBase::TextureChannels::~TextureChannels ( )
protected

Member Function Documentation

◆ addChannel()

int visBase::TextureChannels::addChannel ( )

◆ create()

static TextureChannels* visBase::TextureChannels::create ( )
inlinestatic

◆ createInternal()

static visBase::DataObject* visBase::TextureChannels::createInternal ( )
inlinestaticprivate

◆ currentVersion()

int visBase::TextureChannels::currentVersion ( int  channel) const

◆ enableTextureInterpolation()

void visBase::TextureChannels::enableTextureInterpolation ( bool  )

◆ getChannels()

const SbImagei32* visBase::TextureChannels::getChannels ( ) const

◆ getChannels2RGBA() [1/2]

TextureChannel2RGBA* visBase::TextureChannels::getChannels2RGBA ( )

◆ getChannels2RGBA() [2/2]

const TextureChannel2RGBA* visBase::TextureChannels::getChannels2RGBA ( ) const

◆ getClassName()

virtual const char* visBase::TextureChannels::getClassName ( ) const
overridevirtual

Reimplemented from visBase::DataObject.

◆ getColTabMapper()

const ColTab::Mapper& visBase::TextureChannels::getColTabMapper ( int  channel,
int  version 
) const

◆ getColTabMapperSetup()

const ColTab::MapperSetup& visBase::TextureChannels::getColTabMapperSetup ( int  channel,
int  version 
) const

◆ getEnvelopeRange()

StepInterval<float> visBase::TextureChannels::getEnvelopeRange ( unsigned char  dim) const

◆ getHistogram()

const TypeSet<float>* visBase::TextureChannels::getHistogram ( int  channel) const

◆ getNonShaderResolution()

int visBase::TextureChannels::getNonShaderResolution ( ) const

◆ getNrComponents()

int visBase::TextureChannels::getNrComponents ( int  channel) const

◆ getOrigin()

const Coord& visBase::TextureChannels::getOrigin ( int  channel) const

◆ getOsgIDs()

const TypeSet<int>* visBase::TextureChannels::getOsgIDs ( int  channel) const

◆ getOsgTexture() [1/2]

osgGeo::LayeredTexture* visBase::TextureChannels::getOsgTexture ( )
inline

◆ getOsgTexture() [2/2]

const osgGeo::LayeredTexture* visBase::TextureChannels::getOsgTexture ( ) const
inline

◆ getScale()

const Coord& visBase::TextureChannels::getScale ( int  channel) const

◆ getSize()

int visBase::TextureChannels::getSize ( int  channel,
unsigned char  dim 
) const

◆ getStaticClassName()

static const char* visBase::TextureChannels::getStaticClassName ( )
static

◆ initClass()

static void visBase::TextureChannels::initClass ( )
static

◆ insertChannel()

int visBase::TextureChannels::insertChannel ( int  )

◆ isCurrentDataPremapped()

bool visBase::TextureChannels::isCurrentDataPremapped ( int  channel) const

◆ isOn()

bool visBase::TextureChannels::isOn ( ) const
overridevirtual

Reimplemented from visBase::DataObject.

◆ nrChannels()

int visBase::TextureChannels::nrChannels ( ) const

◆ nrDataBands()

unsigned char visBase::TextureChannels::nrDataBands ( ) const

◆ nrTextureBands()

unsigned char visBase::TextureChannels::nrTextureBands ( ) const
inline

◆ nrUdfBands()

unsigned char visBase::TextureChannels::nrUdfBands ( ) const
inline

◆ nrVersions()

int visBase::TextureChannels::nrVersions ( int  channel) const

◆ operator=()

TextureChannels& visBase::TextureChannels::operator= ( const TextureChannels )
private

◆ reMapData()

void visBase::TextureChannels::reMapData ( int  channel,
bool  dontreclip,
TaskRunner  
)

◆ removeChannel()

void visBase::TextureChannels::removeChannel ( int  )

◆ setChannels2RGBA()

bool visBase::TextureChannels::setChannels2RGBA ( TextureChannel2RGBA )

◆ setColTabMapperSetup()

void visBase::TextureChannels::setColTabMapperSetup ( int  channel,
const ColTab::MapperSetup  
)

Will not trigger a remap, use reMapData.

◆ setCurrentVersion()

void visBase::TextureChannels::setCurrentVersion ( int  channel,
int  version 
)

◆ setMappedData()

bool visBase::TextureChannels::setMappedData ( int  channel,
int  version,
unsigned char *  ,
OD::PtrPolicy   
)

◆ setNonShaderResolution()

void visBase::TextureChannels::setNonShaderResolution ( int  )

◆ setNrComponents()

void visBase::TextureChannels::setNrComponents ( int  channel,
int  nrcomp 
)

◆ setNrVersions()

void visBase::TextureChannels::setNrVersions ( int  channel,
int  nrvers 
)

◆ setOrigin()

void visBase::TextureChannels::setOrigin ( int  channel,
const Coord origin 
)

◆ setScale()

void visBase::TextureChannels::setScale ( int  channel,
const Coord scale 
)

◆ setSize()

void visBase::TextureChannels::setSize ( int  channel,
int  sz0,
int  sz1,
int  sz2 
)

◆ setUnMappedData()

bool visBase::TextureChannels::setUnMappedData ( int  channel,
int  version,
const float *  ,
OD::PtrPolicy  ,
TaskRunner ,
bool  skipclip = false 
)

◆ setUnMappedVSData()

bool visBase::TextureChannels::setUnMappedVSData ( int  channel,
int  version,
const ValueSeries< float > *  ,
OD::PtrPolicy  ,
TaskRunner ,
bool  skipclip = false 
)

◆ sFactoryKeyword()

static const char* visBase::TextureChannels::sFactoryKeyword ( )
static

◆ swapChannels()

void visBase::TextureChannels::swapChannels ( int  ,
int   
)

◆ textureInterpolationEnabled()

bool visBase::TextureChannels::textureInterpolationEnabled ( ) const

◆ touchMappedData()

void visBase::TextureChannels::touchMappedData ( )

◆ turnOn()

bool visBase::TextureChannels::turnOn ( bool  yn)
overridevirtual

Reimplemented from visBase::DataObject.

◆ unfreezeOldData()

void visBase::TextureChannels::unfreezeOldData ( int  channel)

◆ update() [1/2]

void visBase::TextureChannels::update ( ChannelInfo )
protected

◆ update() [2/2]

void visBase::TextureChannels::update ( int  channel,
bool  freezeifnodata = true 
)
protected

Friends And Related Function Documentation

◆ ChannelInfo

friend class ChannelInfo
friend

Member Data Documentation

◆ channelinfo_

ObjectSet<ChannelInfo> visBase::TextureChannels::channelinfo_
protected

◆ interpolatetexture_

bool visBase::TextureChannels::interpolatetexture_ = true
protected

◆ osgtexture_

osgGeo::LayeredTexture* visBase::TextureChannels::osgtexture_
protected

◆ tc2rgba_

TextureChannel2RGBA* visBase::TextureChannels::tc2rgba_ = nullptr
protected

◆ texturecallbackhandler_

TextureCallbackHandler* visBase::TextureChannels::texturecallbackhandler_
protected

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