Public Member Functions | Protected Attributes

ai::typesafe_aspect< T > Class Template Reference

#include <aspect.hpp>

Inheritance diagram for ai::typesafe_aspect< T >:
Inheritance graph
[legend]
Collaboration diagram for ai::typesafe_aspect< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 typesafe_aspect (readonly_context &context, const config &cfg, const std::string &id)
virtual ~typesafe_aspect ()
virtual const T & get () const
virtual const variantget_variant () const
virtual boost::shared_ptr
< variant
get_variant_ptr () const
virtual void recalculate () const =0
virtual boost::shared_ptr< T > get_ptr () const

Protected Attributes

boost::shared_ptr< T > value_
boost::shared_ptr< variantvalue_variant_
boost::shared_ptr< lua_object
< T > > 
value_lua_

Detailed Description

template<typename T>
class ai::typesafe_aspect< T >

Definition at line 117 of file aspect.hpp.


Constructor & Destructor Documentation

template<typename T>
ai::typesafe_aspect< T >::typesafe_aspect ( readonly_context context,
const config cfg,
const std::string &  id 
) [inline]

Definition at line 119 of file aspect.hpp.

template<typename T>
virtual ai::typesafe_aspect< T >::~typesafe_aspect (  )  [inline, virtual]

Definition at line 127 of file aspect.hpp.


Member Function Documentation

template<typename T>
virtual const T& ai::typesafe_aspect< T >::get (  )  const [inline, virtual]

Definition at line 132 of file aspect.hpp.

template<typename T>
virtual boost::shared_ptr<T> ai::typesafe_aspect< T >::get_ptr (  )  const [inline, virtual]

Definition at line 167 of file aspect.hpp.

Referenced by ai::typesafe_aspect< attacks_vector >::get().

Here is the caller graph for this function:

template<typename T>
virtual const variant& ai::typesafe_aspect< T >::get_variant (  )  const [inline, virtual]

Implements ai::aspect.

Definition at line 138 of file aspect.hpp.

Referenced by ai::typesafe_aspect< attacks_vector >::get_ptr().

Here is the caller graph for this function:

template<typename T>
virtual boost::shared_ptr<variant> ai::typesafe_aspect< T >::get_variant_ptr (  )  const [inline, virtual]

Implements ai::aspect.

Definition at line 143 of file aspect.hpp.

Referenced by ai::typesafe_aspect< attacks_vector >::get_variant().

Here is the caller graph for this function:

template<typename T>
virtual void ai::typesafe_aspect< T >::recalculate (  )  const [pure virtual]

Member Data Documentation

template<typename T>
boost::shared_ptr<T> ai::typesafe_aspect< T >::value_ [mutable, protected]
template<typename T>
boost::shared_ptr< lua_object<T> > ai::typesafe_aspect< T >::value_lua_ [mutable, protected]
template<typename T>
boost::shared_ptr<variant> ai::typesafe_aspect< T >::value_variant_ [mutable, protected]

Definition at line 191 of file aspect.hpp.

Referenced by ai::typesafe_aspect< attacks_vector >::get_variant_ptr().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by doxygen 1.7.1 on Thu May 24 2012 01:18:21 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs