1.8.0
CCC
 
Loading...
Searching...
No Matches
gstlrn::ASpaceObject Class Referenceabstract

#include <ASpaceObject.hpp>

Inheritance diagram for gstlrn::ASpaceObject:
gstlrn::AStringable gstlrn::ANeigh gstlrn::CovContext gstlrn::DirParam gstlrn::SpacePoint gstlrn::NeighBench gstlrn::NeighCell gstlrn::NeighImage gstlrn::NeighMoving gstlrn::NeighUnique gstlrn::SpaceTarget

Detailed Description

This class is the base class for all objects that need to know what is its space definition. All ASpaceObject can access to the number of space dimensions and can ask to calculate a distance between two ASpaceObjects.

This class also stores a unique (static) default global space that will be used as default space when creating a ASpaceObject (without a predefined space). It is possible to modify the default space definition at any time. Space definition of pre-existing ASpaceObjects remains the same. (no more shared pointer)

Public Member Functions

 ASpaceObject (const ASpaceSharedPtr &space=ASpaceSharedPtr())
 
 ASpaceObject (const ASpaceObject &r)
 
ASpaceObjectoperator= (const ASpaceObject &r)
 
virtual ~ASpaceObject ()
 
String toString (const AStringFormat *strfmt=nullptr) const override
 AStringable interface.
 
ASpaceSharedPtr getSpace () const
 Accessor to the current object space context.
 
bool isConsistent () const
 Indicate if I am consistent with my current space context.
 
void setSpace (ASpaceSharedPtr &&space)
 
 getUnitaryVector () const
 Return unitary vector for the current space context.
 
bool isConsistent (const ASpaceSharedPtr &space) const
 Indicate if I am consistent with the provided space.
 
virtual bool isConsistent (const ASpace *space) const =0
 
size_t getNDim (Id ispace=-1) const
 Shortcuts to ASpace methods.
 
const & getOrigin (Id ispace=-1) const
 Return the current space context origin coordinates.
 
double getDistance (const SpacePoint &p1, const SpacePoint &p2, Id ispace=0) const
 Return the distance between two space points for the current space context.
 
 getDistances (const SpacePoint &p1, const SpacePoint &p2) const
 Return all the distances (space composits) between two space points for the current space context.
 
 getIncrement (const SpacePoint &p1, const SpacePoint &p2, Id ispace=0) const
 Return the increment vector between two space points for the current space context.
 
void getIncrementInPlace (const SpacePoint &p1, const SpacePoint &p2, 1 &ptemp, Id ispace=-1) const
 
- Public Member Functions inherited from gstlrn::AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (Id level) const final
 

Constructor & Destructor Documentation

◆ ASpaceObject() [1/2]

gstlrn::ASpaceObject::ASpaceObject ( const ASpaceSharedPtr space = ASpaceSharedPtr())

◆ ASpaceObject() [2/2]

gstlrn::ASpaceObject::ASpaceObject ( const ASpaceObject r)

◆ ~ASpaceObject()

gstlrn::ASpaceObject::~ASpaceObject ( )
virtual

Member Function Documentation

◆ getDistance()

double gstlrn::ASpaceObject::getDistance ( const SpacePoint p1,
const SpacePoint p2,
Id  ispace = 0 
) const

Return the distance between two space points for the current space context.

◆ getDistances()

gstlrn::ASpaceObject::getDistances ( const SpacePoint p1,
const SpacePoint p2 
) const

Return all the distances (space composits) between two space points for the current space context.

◆ getIncrement()

gstlrn::ASpaceObject::getIncrement ( const SpacePoint p1,
const SpacePoint p2,
Id  ispace = 0 
) const

Return the increment vector between two space points for the current space context.

◆ getIncrementInPlace()

void gstlrn::ASpaceObject::getIncrementInPlace ( const SpacePoint p1,
const SpacePoint p2,
1 &  ptemp,
Id  ispace = -1 
) const

◆ getNDim()

size_t gstlrn::ASpaceObject::getNDim ( Id  ispace = -1) const

Shortcuts to ASpace methods.

Return the number of dimension of the current space context

◆ getOrigin()

const & gstlrn::ASpaceObject::getOrigin ( Id  ispace = -1) const

Return the current space context origin coordinates.

◆ getSpace()

ASpaceSharedPtr gstlrn::ASpaceObject::getSpace ( ) const
inline

Accessor to the current object space context.

◆ getUnitaryVector()

gstlrn::ASpaceObject::getUnitaryVector ( ) const

Return unitary vector for the current space context.

◆ isConsistent() [1/3]

bool gstlrn::ASpaceObject::isConsistent ( ) const
inline

Indicate if I am consistent with my current space context.

◆ isConsistent() [2/3]

virtual bool gstlrn::ASpaceObject::isConsistent ( const ASpace space) const
pure virtual

◆ isConsistent() [3/3]

bool gstlrn::ASpaceObject::isConsistent ( const ASpaceSharedPtr space) const

Indicate if I am consistent with the provided space.

◆ operator=()

ASpaceObject & gstlrn::ASpaceObject::operator= ( const ASpaceObject r)

◆ setSpace()

void gstlrn::ASpaceObject::setSpace ( ASpaceSharedPtr &&  space)
inline

◆ toString()

String gstlrn::ASpaceObject::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

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