neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::anchor< T, PVT, Context, C, CalculatorArgs > Class Template Reference

#include <anchor.hpp>

Inheritance diagram for neogfx::anchor< T, PVT, Context, C, CalculatorArgs >:

Public Types

typedef Context context_type
 

Public Member Functions

 anchor (i_anchorable &aOwner, i_property &aProperty)
 
 anchor (i_anchorable &aOwner, i_property &aProperty, calculator_function_type aCalculatorOverride)
 
 ~anchor ()
 
i_anchorableowner () const override
 
const i_stringname () const override
 
const i_propertyproperty () const override
 
i_propertyproperty () override
 
bool active () const noexcept override
 
bool calculator_overriden () const noexcept override
 
bool calculating () const noexcept override
 
void constrain (i_anchor &aRhs, anchor_constraint_function aLhsFunction, anchor_constraint_function aRhsFunction) override
 
void constrain (i_anchor &aOther, anchor_constraint_function aOtherFunction) override
 
bool property_set () const
 
value_type const & property_value () const override
 
value_type & property_value () override
 
void add_constraint (constraint const &aConstraint, abstract_type &aOtherAnchor) override
 
void add_constraint (constraint const &aConstraint, std::shared_ptr< abstract_type > aOtherAnchor) override
 
value_type evaluate_constraints (CalculatorArgs const &... aArgs) const override
 
value_type calculate (const CalculatorArgs &... aArgs) const override
 

Detailed Description

template<typename T, typename PVT, class Context, class C, typename... CalculatorArgs>
class neogfx::anchor< T, PVT, Context, C, CalculatorArgs >

Definition at line 32 of file anchor.hpp.

Member Typedef Documentation

◆ context_type

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
typedef Context neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::context_type

Definition at line 40 of file anchor.hpp.

Constructor & Destructor Documentation

◆ anchor() [1/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::anchor ( i_anchorable aOwner,
i_property aProperty 
)
inline

Definition at line 46 of file anchor.hpp.

◆ anchor() [2/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::anchor ( i_anchorable aOwner,
i_property aProperty,
calculator_function_type  aCalculatorOverride 
)
inline

Definition at line 51 of file anchor.hpp.

◆ ~anchor()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::~anchor ( )
inline

Definition at line 56 of file anchor.hpp.

Member Function Documentation

◆ active()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
bool neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::active ( ) const
inlineoverridenoexcept

Definition at line 82 of file anchor.hpp.

◆ add_constraint() [1/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
void neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::add_constraint ( constraint const &  aConstraint,
abstract_type &  aOtherAnchor 
)
inlineoverride

Definition at line 168 of file anchor.hpp.

◆ add_constraint() [2/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
void neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::add_constraint ( constraint const &  aConstraint,
std::shared_ptr< abstract_type >  aOtherAnchor 
)
inlineoverride

Definition at line 172 of file anchor.hpp.

◆ calculate()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
value_type neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::calculate ( const CalculatorArgs &...  aArgs) const
inlineoverride

Definition at line 186 of file anchor.hpp.

◆ calculating()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
bool neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::calculating ( ) const
inlineoverridenoexcept

Definition at line 90 of file anchor.hpp.

◆ calculator_overriden()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
bool neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::calculator_overriden ( ) const
inlineoverridenoexcept

Definition at line 86 of file anchor.hpp.

◆ constrain() [1/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
void neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::constrain ( i_anchor< T, PVT, Context, C, CalculatorArgs > &  aOther,
anchor_constraint_function  aOtherFunction 
)
inlineoverride

Definition at line 100 of file anchor.hpp.

◆ constrain() [2/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
void neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::constrain ( i_anchor< T, PVT, Context, C, CalculatorArgs > &  aRhs,
anchor_constraint_function  aLhsFunction,
anchor_constraint_function  aRhsFunction 
)
inlineoverride

Definition at line 95 of file anchor.hpp.

◆ evaluate_constraints()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
value_type neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::evaluate_constraints ( CalculatorArgs const &...  aArgs) const
inlineoverride

Definition at line 176 of file anchor.hpp.

◆ name()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
const i_string & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::name ( ) const
inlineoverride

Definition at line 70 of file anchor.hpp.

◆ owner()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
i_anchorable & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::owner ( ) const
inlineoverride

Definition at line 66 of file anchor.hpp.

◆ property() [1/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
const i_property & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::property ( ) const
inlineoverride

Definition at line 74 of file anchor.hpp.

◆ property() [2/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
i_property & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::property ( )
inlineoverride

Definition at line 78 of file anchor.hpp.

◆ property_set()

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
bool neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::property_set ( ) const
inline

Definition at line 148 of file anchor.hpp.

◆ property_value() [1/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
value_type const & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::property_value ( ) const
inlineoverride

Definition at line 155 of file anchor.hpp.

◆ property_value() [2/2]

template<typename T , typename PVT , class Context , class C , typename... CalculatorArgs>
value_type & neogfx::anchor< T, PVT, Context, C, CalculatorArgs >::property_value ( )
inlineoverride

Definition at line 164 of file anchor.hpp.


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