All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Types | List of all members
geo::vect::details::BoundCoordManager< CoordHelper, StoredVector > Class Template Reference

#include <geo_vectors_utils.h>

Inheritance diagram for geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >:
geo::vect::details::BoundCoordGetter< CoordHelper, StoredVector >

Public Types

using CoordHelper_t = CoordHelper
 
using Vector_t = typename CoordHelper_t::Vector_t
 
using Scalar_t = typename CoordHelper_t::Scalar_t
 
using Getter_t = typename CoordHelper_t::Getter_t
 
using Setter_t = typename CoordHelper_t::Setter_t
 
using Stored_t = StoredVector
 
- Public Types inherited from geo::vect::details::BoundCoordGetter< CoordHelper, StoredVector >
using Stored_t = StoredVector
 
using CoordHelper_t = CoordHelper
 
using Vector_t = typename CoordHelper_t::Vector_t
 
using Scalar_t = typename CoordHelper_t::Scalar_t
 
using Getter_t = typename CoordHelper_t::Getter_t
 

Public Member Functions

 BoundCoordManager (Stored_t &v, CoordHelper_t coordManager)
 Constructor: manage the specified coordinate of specified vector. More...
 
 BoundCoordManager (Stored_t &v, Getter_t getter, Setter_t setter)
 Constructor: manage the specified vector with specified methods. More...
 
BoundCoordManageroperator= (Scalar_t c)
 Setter: assigns a value to the bound coordinate of specified vector. More...
 
BoundCoordManageroperator+= (Scalar_t c)
 Increments by the specified amount. More...
 
BoundCoordManageroperator-= (Scalar_t c)
 Decrements by the specified amount. More...
 
BoundCoordManageroperator*= (Scalar_t f)
 Multiplies by the specified amount. More...
 
BoundCoordManageroperator/= (Scalar_t f)
 Divides by the specified amount. More...
 
- Public Member Functions inherited from geo::vect::details::BoundCoordGetter< CoordHelper, StoredVector >
 BoundCoordGetter (Stored_t &v, CoordHelper_t coordManager)
 Constructor: manage the specified coordinate of specified vector. More...
 
 BoundCoordGetter (Stored_t &v, Getter_t getter)
 Constructor: manage the specified vector with specified methods. More...
 
Scalar_t get () const
 Returns the value of the bound coordinate. More...
 
Scalar_t operator() () const
 Returns the value of the bound coordinate. More...
 
 operator Scalar_t () const
 Returns the value of the bound coordinate. More...
 

Private Types

using Base_t = BoundCoordGetter< CoordHelper, StoredVector >
 

Additional Inherited Members

- Protected Member Functions inherited from geo::vect::details::BoundCoordGetter< CoordHelper, StoredVector >
CoordHelper_t const & manager () const
 
Stored_tvector () const
 

Detailed Description

template<typename CoordHelper, typename StoredVector>
class geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >

Definition at line 352 of file geo_vectors_utils.h.

Member Typedef Documentation

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::Base_t = BoundCoordGetter<CoordHelper, StoredVector>
private

Definition at line 355 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::CoordHelper_t = CoordHelper

Definition at line 360 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::Getter_t = typename CoordHelper_t::Getter_t

Definition at line 363 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::Scalar_t = typename CoordHelper_t::Scalar_t

Definition at line 362 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::Setter_t = typename CoordHelper_t::Setter_t

Definition at line 364 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordGetter< CoordHelper, StoredVector >::Stored_t = StoredVector

Definition at line 317 of file geo_vectors_utils.h.

template<typename CoordHelper , typename StoredVector >
using geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::Vector_t = typename CoordHelper_t::Vector_t

Definition at line 361 of file geo_vectors_utils.h.

Constructor & Destructor Documentation

template<typename CoordHelper , typename StoredVector >
geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::BoundCoordManager ( Stored_t v,
CoordHelper_t  coordManager 
)
inline

Constructor: manage the specified coordinate of specified vector.

Definition at line 367 of file geo_vectors_utils.h.

368  : Base_t(v, coordManager) {}
constexpr auto coordManager(unsigned int n)
Returns an object that can be bound to a vector to manage one of its coordinates. ...
BoundCoordGetter< CoordHelper, StoredVector > Base_t
template<typename CoordHelper , typename StoredVector >
geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::BoundCoordManager ( Stored_t v,
Getter_t  getter,
Setter_t  setter 
)
inline

Constructor: manage the specified vector with specified methods.

Definition at line 371 of file geo_vectors_utils.h.

372  : Base_t(v, CoordHelper_t(getter, setter)) {}
BoundCoordGetter< CoordHelper, StoredVector > Base_t

Member Function Documentation

template<typename CoordHelper , typename StoredVector >
BoundCoordManager& geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::operator*= ( Scalar_t  f)
inline

Multiplies by the specified amount.

Definition at line 387 of file geo_vectors_utils.h.

388  { Base_t::manager().mult(Base_t::vector(), f); return *this; }
CoordHelper_t const & manager() const
template<typename CoordHelper , typename StoredVector >
BoundCoordManager& geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::operator+= ( Scalar_t  c)
inline

Increments by the specified amount.

Definition at line 379 of file geo_vectors_utils.h.

380  { Base_t::manager().incr(Base_t::vector(), c); return *this; }
CoordHelper_t const & manager() const
template<typename CoordHelper , typename StoredVector >
BoundCoordManager& geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::operator-= ( Scalar_t  c)
inline

Decrements by the specified amount.

Definition at line 383 of file geo_vectors_utils.h.

384  { Base_t::manager().decr(Base_t::vector(), c); return *this; }
CoordHelper_t const & manager() const
template<typename CoordHelper , typename StoredVector >
BoundCoordManager& geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::operator/= ( Scalar_t  f)
inline

Divides by the specified amount.

Definition at line 391 of file geo_vectors_utils.h.

392  { Base_t::manager().div(Base_t::vector(), f); return *this; }
CoordHelper_t const & manager() const
template<typename CoordHelper , typename StoredVector >
BoundCoordManager& geo::vect::details::BoundCoordManager< CoordHelper, StoredVector >::operator= ( Scalar_t  c)
inline

Setter: assigns a value to the bound coordinate of specified vector.

Definition at line 375 of file geo_vectors_utils.h.

376  { Base_t::manager().set(Base_t::vector(), c); return *this; }
CoordHelper_t const & manager() const

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