fw4spl
fwData::TransferFunction Class Reference

This class defines a transfer function. More...

#include <TransferFunction.hpp>

+ Inheritance diagram for fwData::TransferFunction:
+ Collaboration diagram for fwData::TransferFunction:

Classes

struct  TFColor
 Macro for deep and shallow copies. More...
 

Public Types

enum  InterpolationMode { LINEAR, NEAREST }
 Defines the available modes {LINEAR, NEAREST} to interpolate color between two TF color points.
 
typedef double TFValueType
 
typedef std::vector< TFValueType > TFValueVectorType
 
typedef std::vector< TFColorTFColorVectorType
 
typedef std::map< TFValueType, TFColorTFDataType
 
typedef std::pair< TFValueType, TFValueType > TFValuePairType
 
- Public Types inherited from fwData::Object
typedef ::fwData::factory::Key Key
 
typedef std::string FieldNameType
 
typedef std::vector< FieldNameType > FieldNameVectorType
 
typedef ::std::unordered_map< FieldNameType,::fwData::Object::sptr > FieldMapType
 
typedef ::std::unordered_map< ::fwData::Object::csptr,::fwData::Object::sptr > DeepCopyCacheType
 
typedef ::fwCom::Signal< void() > ModifiedSignalType
 Type of signal m_sigModified.
 
typedef std::map< std::string,::fwData::Object::sptr > FieldsContainerType
 Type of signal m_sigModified.
 
typedef ::fwCom::Signal< void(FieldsContainerType) > AddedFieldsSignalType
 Type of signal when objects are added.
 
typedef ::fwCom::Signal< void(FieldsContainerType, FieldsContainerType) > ChangedFieldsSignalType
 Type of signal when objects are changed (newObjects, oldObjects)
 
typedef ::fwCom::Signal< void(FieldsContainerType) > RemovedFieldsSignalType
 Type of signal when objects are removed.
 
- Public Types inherited from fwCom::HasSignals
typedef std::shared_ptr< HasSignalssptr
 
typedef std::shared_ptr< const HasSignalscsptr
 

Public Member Functions

virtual bool isA (const std::string &type) const override
 
FWDATA_API TransferFunction (::fwData::Object::Key key)
 Constructor. More...
 
virtual FWDATA_API ~TransferFunction ()
 Destructor.
 
FWDATA_API void initTF ()
 
FWDATA_API void shallowCopy (const Object::csptr &_source) override
 Shallow copy method.
 
FWDATA_API void cachedDeepCopy (const Object::csptr &_source, DeepCopyCacheType &cache) override
 Deep copy method.
 
FWDATA_API TFValueVectorType getTFValues () const
 Get all the point values of the TF (keys of the map m_tfData)
 
FWDATA_API TFValueVectorType getScaledValues () const
 Get all the point values of the TF scaled and shifted with the window level.
 
FWDATA_API TFValuePairType getMinMaxTFValues () const
 Get the first and last point values of the tf data.
 
FWDATA_API TFValuePairType getWLMinMax () const
 Get the min/max of the window level.
 
FWDATA_API void setWLMinMax (const TFValuePairType &minMax)
 Set the min/max of the window level.
 
FWDATA_API TFValueType getNearestValue (TFValueType value) const
 Return the nearest point value of a value.
 
FWDATA_API const TFDataType & getTFData () const
 Get all the TF data .
 
FWDATA_API void setTFData (const TFDataType &tfData)
 Set all the TF data (clear previous tf data).
 
FWDATA_API void addTFColor (TFValueType value, const TFColor &color)
 Add a new TF color point.
 
FWDATA_API void eraseTFValue (TFValueType value)
 Erase a TF color point.
 
FWDATA_API void clear ()
 Clear all the TF data.
 
FWDATA_API TFColorVectorType getTFColors () const
 Get all the colors of the TF.
 
FWDATA_API TFColor getNearestColor (TFValueType value) const
 Get the nearest color of a value.
 
FWDATA_API TFColor getLinearColor (TFValueType value) const
 Get the color for a value (the color is computed with a linear interpolation).
 
FWDATA_API TFColor getInterpolatedColor (TFValueType value) const
 Get the interpolated color of the TF for a value.The result depends of the current interpolation mode.
 
FWDATA_API const TFColorgetTFColor (TFValueType value) const
 
InterpolationMode getInterpolationMode () const
 Interpolation mode.
 
void setInterpolationMode (InterpolationMode val)
 
double getLevel () const
 Level.
 
void setLevel (double val)
 
double getWindow () const
 Window.
 
void setWindow (double val)
 
const std::string & getName () const
 Transfert function name.
 
void setName (const std::string &val)
 
bool getIsClamped () const
 is TF clamped
 
void setIsClamped (bool val)
 
const TFColorgetBackgroundColor () const
 set the TF background color when tf 'IsClamped' is true
 
void setBackgroundColor (const TFColor &val)
 
- Public Member Functions inherited from fwData::Object
FWDATA_API::fwData::Object::sptr getField (const FieldNameType &name,::fwData::Object::sptr defaultValue=::fwData::Object::sptr()) const
 Returns a pointer of corresponding field (null if non exist). More...
 
template<typename DATA_TYPE >
std::shared_ptr< DATA_TYPE > getField (const FieldNameType &name) const
 Returns a pointer of corresponding field. More...
 
template<typename DATA_TYPE >
std::shared_ptr< DATA_TYPE > getField (const FieldNameType &name, std::shared_ptr< DATA_TYPE > defaultValue) const
 Returns a pointer of corresponding field. More...
 
template<typename DATA_TYPE >
std::shared_ptr< DATA_TYPE > setDefaultField (const FieldNameType &name, std::shared_ptr< DATA_TYPE > defaultValue)
 Returns a pointer of corresponding field. If field did not exist, it is set to defaultValue if defaultValue is not null. More...
 
FWDATA_API::fwData::Object::csptr getConstField (const FieldNameType &name) const
 Returns a pointer of corresponding field (null if non exist). More...
 
FWDATA_API const FieldMapType & getFields () const
 Returns fields map.
 
FWDATA_API FieldNameVectorType getFieldNames () const
 Returns vector of field names.
 
FWDATA_API void setField (const FieldNameType &name,::fwData::Object::sptr obj)
 Register field with specified name. If the name does already exist, the matching field will be replaced. More...
 
FWDATA_API void setFields (const FieldMapType &fieldMap)
 Replace the field map content.
 
FWDATA_API void removeField (const FieldNameType &name)
 Removes field with specified name. More...
 
virtual FWDATA_API void shallowCopy (const ::fwData::Object::csptr &source)
 A shallow copy of fields (objects in m_children) More...
 
FWDATA_API void deepCopy (const ::fwData::Object::csptr &source)
 Make a deep copy from the source Calling this method may invalidate any DumpLock, RescursiveLock or helper on the object. Prefer using fwData::Object::copy instead.
 
FWDATA_API void fieldShallowCopy (const ::fwData::Object::csptr &source)
 A shallow copy of fields (objects in m_children) More...
 
FWDATA_API void fieldDeepCopy (const ::fwData::Object::csptr &source)
 A deep copy of fields (objects in m_children) More...
 
::fwCore::mt::ReadWriteMutexgetMutex () const
 Returns the object's mutex.
 
- Public Member Functions inherited from fwTools::Object
- Public Member Functions inherited from fwCore::BaseObject
- Public Member Functions inherited from fwCom::HasSignals
std::shared_ptr< SignalBasesignal (const Signals::SignalKeyType &key) const
 
template<typename SignalType >
std::shared_ptr< SignalType > signal (const Signals::SignalKeyType &key) const
 
template<typename SignalType >
std::shared_ptr< SignalType > newSignal (const Signals::SignalKeyType &key)
 

Static Public Member Functions

static bool isTypeOf (const std::string &type)
 
static FWDATA_API TransferFunction::sptr createDefaultTF ()
 
- Static Public Member Functions inherited from fwData::Object
static bool isTypeOf (const std::string &type)
 
static FWDATA_API::fwData::Object::sptr copy (const ::fwData::Object::csptr &source)
 return a copy of the source. if source is a null pointer, return a null pointer.
 
template<typename DATA_TYPE >
static std::shared_ptr< DATA_TYPE > copy (const std::shared_ptr< const DATA_TYPE > &source)
 return a copy of the source. if source is a null pointer, return a null pointer.
 
template<typename DATA_TYPE >
static std::shared_ptr< DATA_TYPE > copy (const std::shared_ptr< DATA_TYPE > &source)
 return a copy of the source. if source is a null pointer, return a null pointer.
 
static const std::string & classname ()
 return full object's classname with its namespace, i.e. fwCore::BaseObject
 
- Static Public Member Functions inherited from fwTools::Object
static bool isTypeOf (const std::string &type)
 
static const std::string & classname ()
 return full object's classname with its namespace, i.e. fwCore::BaseObject
 
- Static Public Member Functions inherited from fwCore::BaseObject
static bool isTypeOf (const std::string &type)
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 

Static Public Attributes

static FWDATA_API const std::string s_DEFAULT_TF_NAME = "CT-GreyLevel"
 Default transfer function name.
 
- Static Public Attributes inherited from fwData::Object
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_MODIFIED_SIG = "modified"
 Key in m_signals map of signal m_sigModified.
 
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_ADDED_FIELDS_SIG = "addedFields"
 Type of signal m_sigModified.
 
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_CHANGED_FIELDS_SIG = "changedFields"
 Type of signal m_sigModified.
 
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_REMOVED_FIELDS_SIG = "removedFields"
 Type of signal m_sigModified.
 

Friends

template<class , class , class >
class ::fwTools::ClassFactory
 
class ::fwTools::Factory
 

Demangling methods

virtual const std::string & getLeafClassname () const override
 return object's classname without its namespace, i.e. BaseObject
 
virtual const std::string & getClassname () const override
 return full object's classname with its namespace, i.e. fwCore::BaseObject
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 

Signals

typedef ::fwCom::Signal< void() > PointsModifiedSignalType
 Type of signal when points are modified.
 
typedef ::fwCom::Signal< void(double, double) > WindowingModifiedSignalType
 Type of signal when window-level is modified (window, level)
 
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_POINTS_MODIFIED_SIG = "pointsModified"
 Type of signal when points are modified.
 
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_WINDOWING_MODIFIED_SIG = "windowingModified"
 Type of signal when points are modified.
 

Additional Inherited Members

- Protected Types inherited from fwTools::fwID
enum  Policy { EMPTY = 1, GENERATE, MUST_EXIST }
 
typedef std::string IDType
 
- Protected Member Functions inherited from fwData::Object
FWDATA_API void fieldDeepCopy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache)
 Internal-use methods to implement Object's deepCopy.
 
virtual FWDATA_API void cachedDeepCopy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache)=0
 Internal-use methods to implement Object's deepCopy.
 
- Protected Member Functions inherited from fwTools::fwID
FWTOOLS_API bool hasID () const
 Return true if the object has an id set. More...
 
FWTOOLS_API IDType getID (Policy policy=GENERATE) const
 Returns the id of the object. If it is not set and the policy value is. More...
 
virtual FWTOOLS_API void setID (IDType newID)
 Set a newID for the object, (newID must not exist in fwID), the oldest one is released. More...
 
FWTOOLS_API void resetID ()
 Release the id for the object. More...
 
 fwID ()
 Constructor : does nothing.
 
- Protected Member Functions inherited from fwCom::HasSignals
 HasSignals (const HasSignals &)
 Copy constructor forbidden.
 
HasSignalsoperator= (const HasSignals &)
 Copy operator forbidden.
 
- Static Protected Member Functions inherited from fwData::Object
static FWDATA_API::fwData::Object::sptr copy (const ::fwData::Object::csptr &source, DeepCopyCacheType &cache)
 Internal-use methods to implement Object's deepCopy.
 
template<typename DATA_TYPE >
static std::shared_ptr< DATA_TYPE > copy (const std::shared_ptr< const DATA_TYPE > &source, DeepCopyCacheType &cache)
 Internal-use methods to implement Object's deepCopy.
 
template<typename DATA_TYPE >
static std::shared_ptr< DATA_TYPE > copy (const std::shared_ptr< DATA_TYPE > &source, DeepCopyCacheType &cache)
 Internal-use methods to implement Object's deepCopy.
 
- Static Protected Member Functions inherited from fwTools::fwID
static bool isTypeOf (const std::string &type)
 
static FWTOOLS_API bool exist (IDType _id)
 
static FWTOOLS_API std::shared_ptr< ::fwTools::ObjectgetObject (IDType requestID)
 Retrieve the object attached to the given id. Return a null sptr if no correspondence exist. More...
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 
- Protected Attributes inherited from fwData::Object
FieldMapType m_fields
 Fields.
 
mutable::fwCore::mt::ReadWriteMutex m_mutex
 Mutex to protect object access.
 
- Protected Attributes inherited from fwTools::Object
std::shared_ptr< ::fwTools::UUIDm_uuid
 UUID used to identify the object, notably for serialization.
 
- Protected Attributes inherited from fwCom::HasSignals
Signals m_signals
 

Detailed Description

This class defines a transfer function.

A transfer function is composed of some points which have a color and a value.

Definition at line 23 of file SrcLib/core/fwData/include/fwData/TransferFunction.hpp.

Constructor & Destructor Documentation

fwData::TransferFunction::TransferFunction ( ::fwData::Object::Key  key)

Constructor.

Parameters
keyPrivate construction key

Definition at line 30 of file SrcLib/core/fwData/src/fwData/TransferFunction.cpp.

References s_POINTS_MODIFIED_SIG, and s_WINDOWING_MODIFIED_SIG.


The documentation for this class was generated from the following files: