FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
Public Member Functions | Public Attributes | List of all members
ProjTransformator Struct Reference
Inheritance diagram for ProjTransformator:
Fiber::Transformator Fiber::Transformator MemCore::ReferenceBase< Transformator > MemCore::ReferenceBase< Transformator >

Public Member Functions

FieldTransformator get (const ChartID &TargetChart, const Skeleton &FieldContainer, const FieldID &Fieldname) override
 Callback function to provide a Transformation into the specific chart from the available coordinate representation.
 
void fillTransformations (const std::string &source, const std::string &target, const RefPtr< ProjTransformation > &trafo)
 
void printStoredTransformations ()
 
FieldTransformator get (const ChartID &TargetChartName, const Skeleton &FieldContainer, const FieldID &Fieldname) override
 Callback function to provide a Transformation into the specific chart from the available coordinate representation.
 
- Public Member Functions inherited from MemCore::ReferenceBase< Transformator >
auto getObjectCountID () const noexcept
 
bool isIdentical (const WeakPtr< Object, Object > &PossibleSelf) const noexcept
 
void mkAutoDestructive ()
 
refcount_t refcount () const noexcept
 
 ReferenceBase (Object *that) noexcept
 
const auto & self () const
 
refcount_t wrefcount () const noexcept
 

Public Attributes

Ref< ProjTransformationmyProjTransformation {"EPSG:20000", "EPSG:10000"}
 
std::unordered_map< std::string, std::unordered_map< std::string, RefPtr< ProjTransformation > > > transformations
 

Additional Inherited Members

- Public Types inherited from MemCore::ReferenceBase< Transformator >
typedef Object reference_domain_t
 
typedef WeakPtr< Object, Object > SelfPtr_t
 
- Protected Member Functions inherited from MemCore::ReferenceBase< Transformator >
virtual void extremeUnction ()
 
ReferenceBaseoperator= (const ReferenceBase &R)
 
void suicide ()
 

Member Function Documentation

◆ get() [1/2]

FieldTransformator ProjTransformator::get ( const ChartID TargetChartName,
const Skeleton FieldContainer,
const FieldID Fieldname 
)
inlineoverridevirtual

Callback function to provide a Transformation into the specific chart from the available coordinate representation.

No actual data are transformed by this call, it merely specifies that the given coordinate transformation is possible.

The actual data transformation is performed by the Transformation object that is returned by this call.

It is the responsibility of the Transformator to identify an appropriate source representation within the provided Skeleton and to return the field in this given representation.

The Sourcefield is mandatory, the SourcePositions are optional: Many transformation functions are location-dependent, so the transformation will need the coordinate location of some value, thus the positions are provided when transforming some data field. In some special cases the transformations are location-independent, on which case the SourcePositions field is not needed. Also, if the positions themselves are transformed, then this field is not available yet and will be a nullptr.

Implements Fiber::Transformator.

References Fiber::Representation::getPositions().

◆ get() [2/2]

FieldTransformator ProjTransformator::get ( const ChartID TargetChartName,
const Skeleton FieldContainer,
const FieldID Fieldname 
)
inlineoverridevirtual

Callback function to provide a Transformation into the specific chart from the available coordinate representation.

No actual data are transformed by this call, it merely specifies that the given coordinate transformation is possible.

The actual data transformation is performed by the Transformation object that is returned by this call.

It is the responsibility of the Transformator to identify an appropriate source representation within the provided Skeleton and to return the field in this given representation.

The Sourcefield is mandatory, the SourcePositions are optional: Many transformation functions are location-dependent, so the transformation will need the coordinate location of some value, thus the positions are provided when transforming some data field. In some special cases the transformations are location-independent, on which case the SourcePositions field is not needed. Also, if the positions themselves are transformed, then this field is not available yet and will be a nullptr.

Implements Fiber::Transformator.

References std::cout, std::unordered_map< typename _Key, typename _Tp, typename _Hash, typename _Pred, typename _Alloc >::end(), std::endl(), std::unordered_map< typename _Key, typename _Tp, typename _Hash, typename _Pred, typename _Alloc >::find(), Fiber::Representation::getPositions(), and std::search().