Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
Fiber::Chart Class Referenceabstract

A generic Chart object that may be used to cast information of points within a manifold to numerical values. More...

#include <Chart.hpp>

Inheritance diagram for Fiber::Chart:
Fiber::BaseSpace Fiber::Ownable< BaseSpace > MemCore::Intercube Fiber::OwnerBase Fiber::CartesianChart3D Fiber::RGBAChart Fiber::TextureChart< 2 > Fiber::TimePolar2DChart

Public Member Functions

 Chart (const WeakPtr< ChartCreatorBase > &MyCreator, const RefPtr< ChartID > &mID)
 Constructor.
 ~Chart ()
 Destructor.
const RefPtr< ChartID > & ID () const throw ()
const RefPtr< ChartID > & getId () const throw ()
string Name () const override
 Name of this chart.
string getName () const
 Name of this chart.
int dims () const
 Dimensions.
int Dims () const override
 Dimensions.
const char * component_name (int i) const
 Name of the ith component.
const char * domain_name () const
 Name of the associated common domain name.
RefPtr< Chartcreate (const RefPtr< ChartID > &mID)
const type_infogetChartType () const
virtual RefPtr< FieldmakeField (const type_info &base_type, const Tensortype &t)=0
string xml () const override
Public Member Functions inherited from Fiber::BaseSpace
void addDependency (const MemCore::WeakPtr< BaseSpaceDependency > &)
 Add an object that will be dependent on the existence of this base space.
 BaseSpace ()
 Constructor.
virtual ~BaseSpace ()
 Virtual destructor.
Public Member Functions inherited from Fiber::Ownable< BaseSpace >
void x_updateOwnershipAge (const MemCore::Ageable &theNewAge) override
 Forward some age to all Owners.
void insertOwner (const Container &theOwner)
 Add some owner.
void addOwner (const Container &theOwner, const MemCore::Ageable &theNewAge)
 Add some owner and broadcast a new age to all Ownerrs.
 Ownable ()
 Default constructor, empty Ownership list.
Ownableoperator= (const Ownable &)
 Assignment, does NOT copy any ownership information, the assigned Ownable will retain all its ownership information.
MemCore::WeakPtr< Container > getPrimaryOwner () const
 Get the first valid owner.
size_t getNumberOfValidOwners () const
 Get the first valid owner.
bool processOwnership (MemCore::Intercube &Output, const MemCore::Intercube &Input) const override
 Process some ownership action.
Public Member Functions inherited from Fiber::OwnerBase
bool processOwnership (MemCore::Intercube &OutputAndInput) const
 Process ownership where the input information is shared with the output information in the same Intercube.
Public Member Functions inherited from MemCore::Intercube
void addInterface (const RefPtr< InterfaceBase > &I) const
void addInterfaceData (const Data &D)
void addInterfaceData (const Data &D)
void clearInterfaces ()
bool const_iterateInterfaces (const RefPtr< InterfaceIterationParameter > &IIP) const
virtual RefPtr< InterfaceBasecreateInterface (const type_info &) const
RefPtr< InterfaceBasefindInterface (const type_info &t) const
RefPtr< InterfaceBasegetInterface (const type_info &t)
std::string getInterfaceNames (const char delim=';') const
bool gotNewInterfaceData (const Data &D)
bool gotNewInterfaceData (mutex &M, const Data &D)
bool gotNewInterfaceData (mutex &M, const Data &D)
bool gotNewInterfaceData (mutex &M, const Data &D, const Selector &S)
bool gotNewInterfaceData (mutex &M, const Data &D, const Selector *S)
bool hasChangedInterfaceData (const Data &D) const
bool hasChangedInterfaceData (const Data &D) const
bool hasChangedInterfaceData (const Data &D, const Selector &) const
bool hasChangedInterfaceData (const Data &D, const Selector *) const
bool hasInterface (const type_info &t) const
bool iterateInterfaces (const RefPtr< InterfaceIterationParameter > &IIP)
void printInterfaces () const
void registerInterface (const type_info &t)
void removeInterface ()
void removeInterfaceBase (const type_info &InterfaceBaseID)

Static Public Member Functions

static RefPtr< Chartcreate (const type_info &chart_type, const RefPtr< ChartID > &mID)

Additional Inherited Members

Public Types inherited from Fiber::OwnerBase
template<class ItemType>
using Item = MemCore::InterfaceData<ItemType>
 An optional convenience class that allows to easily add arbitrary types to Intercubes .
Public Attributes inherited from Fiber::Ownable< BaseSpace >
std::unordered_set< MemCore::WeakPtr< Container > > Owners
 The (internal) list of owners.

Detailed Description

A generic Chart object that may be used to cast information of points within a manifold to numerical values.

It is a Domain such that Chart objects can be used as Representers of Topologies.

Charts by itself are abstract objects and may not be created explicitely. All actual chart objects are derived classes, in particular the CoordinateMap<CoordinateSystem> template instantiated over a certain numerical coordinate system. Examples are numerical charts from the VecAl library, which are of the form VecAl::Chart<CoordinateType, FloatType>. The FloatType argument, e.g. double, float or qdouble, will be used to construct the numerical types. The CoordinateType will be used to construct names of compound types like tensorial types.

Member Function Documentation

◆ Dims()

int Fiber::Chart::Dims ( ) const
inlineoverridevirtual

Dimensions.

Implements Fiber::BaseSpace.

References dims().

◆ Name()

string Fiber::Chart::Name ( ) const
inlineoverridevirtual

Name of this chart.

Implements Fiber::BaseSpace.

Referenced by getName(), and Fiber::Atlas::getTransformation().

◆ xml()

string Fiber::Chart::xml ( ) const
inlineoverridevirtual

Implements Fiber::BaseSpace.