The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
typedefs.hpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2010 - 2016 by Gabriel Morin <gabrielmorin (at) gmail (dot) com>
3  Part of the Battle for Wesnoth Project http://www.wesnoth.org
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; either version 2 of the License, or
8  (at your option) any later version.
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY.
11 
12  See the COPYING file for more details.
13  */
14 
15 /**
16  * @file
17  * Contains typedefs for the whiteboard.
18  */
19 
20 
21 #ifndef WB_TYPEDEFS_HPP_
22 #define WB_TYPEDEFS_HPP_
23 
24 #include "log.hpp"
25 static lg::log_domain log_whiteboard("whiteboard");
26 #define ERR_WB LOG_STREAM_INDENT(err, log_whiteboard)
27 #define WRN_WB LOG_STREAM_INDENT(warn, log_whiteboard)
28 #define LOG_WB LOG_STREAM_INDENT(info, log_whiteboard)
29 #define DBG_WB LOG_STREAM_INDENT(debug, log_whiteboard)
30 
31 #include <deque>
32 #include <ostream> //used for << operators
33 
34 #include <boost/enable_shared_from_this.hpp>
35 #include <boost/make_shared.hpp>
36 #include <boost/scoped_ptr.hpp>
37 #include <boost/shared_ptr.hpp>
38 #include <boost/weak_ptr.hpp>
39 
40 #include "fake_unit_ptr.hpp"
41 #include "units/ptr.hpp"
42 
43 class arrow;
44 class config;
45 class fake_unit_manager;
46 class game_board;
47 struct map_location; //not used in the typedefs, saves a few forward declarations
48 class unit;
49 class unit_map; //not used in the typedefs, saves a few forward declarations
50 
51 namespace pathfind {
52  struct plain_route;
53  struct marked_route;
54 }
55 
56 namespace wb {
57 
58 class action;
59 class move;
60 class attack;
61 class recall;
62 class recruit;
63 class suppose_dead;
65 
67 
69 
72 typedef boost::weak_ptr<action> weak_action_ptr;
73 typedef std::deque<action_ptr> action_queue;
75 
86 
87 } // end namespace wb
88 
89 #endif /* WB_TYPEDEFS_HPP_ */
Game board class.
Definition: game_board.hpp:55
boost::shared_ptr< action const > action_const_ptr
Definition: typedefs.hpp:71
Definition: unit.hpp:95
boost::shared_ptr< attack > attack_ptr
Definition: typedefs.hpp:78
boost::shared_ptr< action > action_ptr
Definition: typedefs.hpp:70
Manages a list of fake units for the display object.
boost::weak_ptr< action > weak_action_ptr
Definition: typedefs.hpp:72
boost::shared_ptr< suppose_dead > suppose_dead_ptr
Definition: typedefs.hpp:84
Arrows destined to be drawn on the map.
Definition: arrow.hpp:30
boost::shared_ptr< suppose_dead const > suppose_dead_const_ptr
Definition: typedefs.hpp:85
Encapsulates the map of the game.
Definition: location.hpp:38
boost::shared_ptr< recall const > recall_const_ptr
Definition: typedefs.hpp:83
static lg::log_domain log_whiteboard("whiteboard")
boost::shared_ptr< recruit const > recruit_const_ptr
Definition: typedefs.hpp:81
boost::shared_ptr< bool > whiteboard_lock
Definition: typedefs.hpp:64
boost::shared_ptr< move const > move_const_ptr
Definition: typedefs.hpp:77
boost::shared_ptr< arrow > arrow_ptr
Definition: typedefs.hpp:68
boost::shared_ptr< move > move_ptr
Definition: typedefs.hpp:76
Standard logging facilities (interface).
Container associating units to locations.
Definition: map.hpp:90
std::deque< action_ptr > action_queue
Definition: typedefs.hpp:73
boost::shared_ptr< side_actions > side_actions_ptr
Definition: typedefs.hpp:74
boost::shared_ptr< attack const > attack_const_ptr
Definition: typedefs.hpp:79
boost::shared_ptr< recall > recall_ptr
Definition: typedefs.hpp:82
A config object defines a single node in a WML file, with access to child nodes.
Definition: config.hpp:83
This internal whiteboard class holds the planned action queues for a team, and offers many utility me...
boost::shared_ptr< recruit > recruit_ptr
Definition: typedefs.hpp:80
Definition: display.hpp:47