Horizon Official Technical Documentation
Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX > Class Template Reference

#include <BonusesImpl.hpp>

+ Inheritance diagram for Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >:
+ Collaboration diagram for Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >:

Public Member Functions

 BonusArray (std::shared_ptr< Unit > unit, status_point_type status_point_type)
 
 BonusArray (const BonusArray &other)
 
 BonusArray (BonusArray &&other)
 
BonusArrayoperator= (const BonusArray &other)
 
BonusArrayoperator= (BonusArray &&other)
 
BONUSTYPE & operator[] (int type)
 
const BONUSTYPE & operator[] (int type) const
 
BONUSTYPE get (int type)
 
void set (int type, BONUSTYPE bonus)
 
void clear ()
 
void clear (int type)
 
- Public Member Functions inherited from Horizon::Zone::Bonuses::IBonusArray
 IBonusArray (status_point_type type)
 
virtual ~IBonusArray ()
 
virtual void clear ()=0
 
virtual void clear (int type)=0
 
status_point_type get_type ()
 
void set_type (status_point_type st_type)
 

Public Attributes

std::array< BONUSTYPE, TYPEMAX > _types
 
- Public Attributes inherited from Horizon::Zone::Bonuses::IBonusArray
status_point_type _st_type
 

Constructor & Destructor Documentation

◆ BonusArray() [1/3]

template<typename BONUSTYPE , int TYPEMAX>
Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::BonusArray ( std::shared_ptr< Unit unit,
status_point_type  status_point_type 
)
inline
status_point_type
Definition: UnitDefinitions.hpp:87
IBonusArray(status_point_type type)
Definition: BonusesImpl.hpp:119

◆ BonusArray() [2/3]

template<typename BONUSTYPE , int TYPEMAX>
Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::BonusArray ( const BonusArray< BONUSTYPE, TYPEMAX > &  other)
inline
138: _types(other._types) { }
std::array< BONUSTYPE, TYPEMAX > _types
Definition: BonusesImpl.hpp:162

◆ BonusArray() [3/3]

template<typename BONUSTYPE , int TYPEMAX>
Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::BonusArray ( BonusArray< BONUSTYPE, TYPEMAX > &&  other)
inline
139: _types(std::move(other._types)) { }

Member Function Documentation

◆ clear() [1/2]

template<typename BONUSTYPE , int TYPEMAX>
void Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::clear ( )
inlinevirtual

Implements Horizon::Zone::Bonuses::IBonusArray.

152 {
153 for (int i = 0; i < TYPEMAX; i++)
154 clear(i);
155 }
void clear()
Definition: BonusesImpl.hpp:151

References Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::clear().

Referenced by Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::clear().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ clear() [2/2]

template<typename BONUSTYPE , int TYPEMAX>
void Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::clear ( int  type)
inlinevirtual

◆ get()

template<typename BONUSTYPE , int TYPEMAX>
BONUSTYPE Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::get ( int  type)
inline

◆ operator=() [1/2]

template<typename BONUSTYPE , int TYPEMAX>
BonusArray & Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::operator= ( BonusArray< BONUSTYPE, TYPEMAX > &&  other)
inline
143{ _types = std::move(other._types); return *this; }

References Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::_types.

◆ operator=() [2/2]

template<typename BONUSTYPE , int TYPEMAX>
BonusArray & Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::operator= ( const BonusArray< BONUSTYPE, TYPEMAX > &  other)
inline
142{ _types = other._types; return *this; }

References Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::_types.

◆ operator[]() [1/2]

template<typename BONUSTYPE , int TYPEMAX>
BONUSTYPE & Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::operator[] ( int  type)
inline

◆ operator[]() [2/2]

template<typename BONUSTYPE , int TYPEMAX>
const BONUSTYPE & Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::operator[] ( int  type) const
inline

◆ set()

template<typename BONUSTYPE , int TYPEMAX>
void Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::set ( int  type,
BONUSTYPE  bonus 
)
inline
149{ _types[type] = std::move(bonus); }

References Horizon::Zone::Bonuses::BonusArray< BONUSTYPE, TYPEMAX >::_types.

Member Data Documentation

◆ _types


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