animated< T, T_void_value > Class Template Reference

#include <animated.hpp>

Collaboration diagram for animated< T, T_void_value >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef std::pair< int, T > frame_description
typedef std::vector
< frame_description
anim_description

Public Member Functions

 animated (int start_time=0)
virtual ~animated ()
 animated (const std::vector< frame_description > &cfg, int start_time=0, bool force_change=false)
void add_frame (int duration, const T &value, bool force_change=false)
 Adds a frame to an animation.
void start_animation (int start_time, bool cycles=false)
 Starts an animation cycle.
void pause_animation ()
void restart_animation ()
int get_begin_time () const
int get_end_time () const
void set_begin_time (int new_begin_time)
int time_to_tick (int animation_time) const
int tick_to_time (int animation_tick) const
void update_last_draw_time (double acceleration=0)
bool need_update () const
bool cycles () const
bool animation_finished () const
 Returns true if the current animation was finished.
bool animation_finished_potential () const
int get_animation_time () const
int get_animation_time_potential () const
int get_animation_duration () const
const T & get_current_frame () const
int get_current_frame_begin_time () const
int get_current_frame_end_time () const
int get_current_frame_duration () const
int get_current_frame_time () const
const T & get_first_frame () const
const T & get_last_frame () const
int get_frames_count () const
void force_change ()
bool does_not_change () const

Static Public Attributes

static const T void_value_ = T_void_value()()

Protected Member Functions

void remove_frames_until (int starting_time)
void remove_frames_after (int ending_time)

Protected Attributes

int starting_frame_time_

Private Attributes

bool does_not_change_
bool started_
bool need_first_update_
std::vector< frameframes_
int start_tick_
bool cycles_
double acceleration_
int last_update_tick_
int current_frame_key_

Friends

class unit_animation

Classes

struct  frame


Detailed Description

template<typename T, typename T_void_value = void_value<T>>
class animated< T, T_void_value >

Definition at line 37 of file animated.hpp.


Member Typedef Documentation

template<typename T, typename T_void_value = void_value<T>>
typedef std::pair<int,T> animated< T, T_void_value >::frame_description

Definition at line 42 of file animated.hpp.

template<typename T, typename T_void_value = void_value<T>>
typedef std::vector<frame_description> animated< T, T_void_value >::anim_description

Definition at line 46 of file animated.hpp.


Constructor & Destructor Documentation

template<typename T, typename T_void_value>
animated< T, T_void_value >::animated ( int  start_time = 0  )  [inline]

Definition at line 46 of file animated.i.

template<typename T, typename T_void_value = void_value<T>>
virtual animated< T, T_void_value >::~animated (  )  [inline, virtual]

Definition at line 42 of file animated.hpp.

template<typename T, typename T_void_value>
animated< T, T_void_value >::animated ( const std::vector< frame_description > &  cfg,
int  start_time = 0,
bool  force_change = false 
) [inline]

Definition at line 60 of file animated.i.

References animated< T, T_void_value >::add_frame(), and cfg.


Member Function Documentation

template<typename T, typename T_void_value>
void animated< T, T_void_value >::add_frame ( int  duration,
const T &  value,
bool  force_change = false 
) [inline]

template<typename T, typename T_void_value>
void animated< T, T_void_value >::start_animation ( int  start_time,
bool  cycles = false 
) [inline]

template<typename T, typename T_void_value = void_value<T>>
void animated< T, T_void_value >::pause_animation (  )  [inline]

Definition at line 57 of file animated.hpp.

Referenced by unit_animation::pause_animation().

template<typename T, typename T_void_value = void_value<T>>
void animated< T, T_void_value >::restart_animation (  )  [inline]

Definition at line 58 of file animated.hpp.

Referenced by unit_animation::restart_animation().

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_begin_time (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_end_time (  )  const [inline]

template<typename T, typename T_void_value>
void animated< T, T_void_value >::set_begin_time ( int  new_begin_time  )  [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::time_to_tick ( int  animation_time  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::tick_to_time ( int  animation_tick  )  const [inline]

template<typename T, typename T_void_value>
void animated< T, T_void_value >::update_last_draw_time ( double  acceleration = 0  )  [inline]

template<typename T, typename T_void_value>
bool animated< T, T_void_value >::need_update (  )  const [inline]

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::cycles (  )  const [inline]

Definition at line 70 of file animated.hpp.

template<typename T, typename T_void_value>
bool animated< T, T_void_value >::animation_finished (  )  const [inline]

template<typename T, typename T_void_value>
bool animated< T, T_void_value >::animation_finished_potential (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_animation_time (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_animation_time_potential (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_animation_duration (  )  const [inline]

template<typename T, typename T_void_value>
const T & animated< T, T_void_value >::get_current_frame (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_current_frame_begin_time (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_current_frame_end_time (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_current_frame_duration (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_current_frame_time (  )  const [inline]

template<typename T, typename T_void_value>
const T & animated< T, T_void_value >::get_first_frame (  )  const [inline]

template<typename T, typename T_void_value>
const T & animated< T, T_void_value >::get_last_frame (  )  const [inline]

template<typename T, typename T_void_value>
int animated< T, T_void_value >::get_frames_count (  )  const [inline]

Definition at line 284 of file animated.i.

References animated< T, T_void_value >::frames_.

template<typename T, typename T_void_value = void_value<T>>
void animated< T, T_void_value >::force_change (  )  [inline]

Definition at line 87 of file animated.hpp.

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::does_not_change (  )  const [inline]

Definition at line 88 of file animated.hpp.

template<typename T, typename T_void_value>
void animated< T, T_void_value >::remove_frames_until ( int  starting_time  )  [inline, protected]

template<typename T, typename T_void_value>
void animated< T, T_void_value >::remove_frames_after ( int  ending_time  )  [inline, protected]


Friends And Related Function Documentation

template<typename T, typename T_void_value = void_value<T>>
friend class unit_animation [friend]

Definition at line 93 of file animated.hpp.


Member Data Documentation

template<typename T, typename T_void_value = void_value<T>>
const T animated< T, T_void_value >::void_value_ = T_void_value()() [inline, static]

template<typename T, typename T_void_value = void_value<T>>
int animated< T, T_void_value >::starting_frame_time_ [protected]

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::does_not_change_ [private]

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::started_ [private]

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::need_first_update_ [private]

template<typename T, typename T_void_value = void_value<T>>
std::vector<frame> animated< T, T_void_value >::frames_ [private]

template<typename T, typename T_void_value = void_value<T>>
int animated< T, T_void_value >::start_tick_ [private]

template<typename T, typename T_void_value = void_value<T>>
bool animated< T, T_void_value >::cycles_ [private]

template<typename T, typename T_void_value = void_value<T>>
double animated< T, T_void_value >::acceleration_ [private]

template<typename T, typename T_void_value = void_value<T>>
int animated< T, T_void_value >::last_update_tick_ [private]

template<typename T, typename T_void_value = void_value<T>>
int animated< T, T_void_value >::current_frame_key_ [private]


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

Generated by doxygen 1.5.5 on 23 May 2008 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs