| sdlvisu::ActionDlg | |
| sdlvisu::ActionPopup | Action Popup, used for both declaration and action |
| AIApp | Test for a TBT Artificial Intelligence Client |
| Api | User interface for graphical interface, AI, etc. This class is really the "bridge" between the "coach" (whether it would be a human or a computer) and the rules engine |
| Ball< T > | Base class describing the ball |
| BaseApi< T > | |
| BasePacketHandler | Base packet handler |
| BaseRules | Base rules class for all kind of game |
| BClose | Button Close Class This class create a button with a "Close" image |
| BNo | Button No Class This class create a button with a "No" image |
| BYes | Button Yes Class This class create a button with a "Yes" image |
| CBall | Ball for the client |
| CField | Field for the client |
| ChampionLoader | Helper class that load/run an UI |
| server::Client | Keep additional data about a client (statistics, status, ...) |
| ClientApp | A generic client entry point (immediately after main). Regroup commonly used code |
| ClientCx | Handle connection with the server. Takes care of network connection with the server, provides methods to connect, disconnect, .. |
| ClientStatistic | Clients statistics that can be retrieved from Client. Originated from a kludge: Generic server and arbiter have several different informations on each client. They are all grouped here (with the CoachErrorCustom rules class), then resend to rules at the end so it can write stats, calculate scores, .. |
| ClientUid | Give an uid for the client. Server -> Client |
| CmdLineInterface | A stupid command line based client |
| CPlayer | |
| CPlayerMsg | Handle messages for CPlayer objects. There is a single instance of this class, that dispatch message to the good CPlayer object |
| CRules | Rules implementation for the client |
| CTeam | Team implementation on client side |
| CTeamMsg | Handle messages for CTeam objects. There is a single instance of this class, that dispatch message to the good CTeam object |
| Cx | Base class for network/file data transfert. This class contain only methods related to data transfert (send, receive). Use a derived class to be able to open a connection, like FileCx or TcpCx. You can send/receive arbitrary data or file, or you can use the Packet class that already contains useful attributes |
| DialogBox | Master DialogBox Class This class is a virtual class. You need to use a class which inherit from it to do a dialogbox |
| sdlvisu::DialogBox | Victor reimplementation of dialog box. Sorry poltuiu I can't reuse your... my system is too different :) |
| sdlvisu::DialogBoxCb | Base class for DialogBox button handler |
| Dice | X-faced dice |
| DInfo | Dinfo Class : a simple Info DialogBox This class create a dialogbox with :
|
| DualString | Dual-purpose (and two-faced) string: wraps a string (XMLCh* or char*) and lets you access it in either form |
| Event | Base UI events class. Derive from this class and virtual methods will be called... when time will come |
| Field< T > | Game playing ground. |
| FreeXercesString | Static functions to release C-style char* strings and XMLCh* strings allocated by Xerces routines |
| sdlvisu::Game | Main class to create a new game. To destroy when a game is finished. Control all the game |
| server::GameHosting | Represents a game, with up to two coachs and as many viewers as they could be. Each game is identified by a uid, passed to the ctor |
| GUIError | Class thrown on error |
| ImageButton | Image Button Class This class create a button with an image |
| Input | Hold keyboard and mouse state. * For mouse absolute position and delta motion, this should be obvious. * For mouse button, use constants SDL_BUTTON_LEFT, ..., see SDL_MouseButtonEvent(5). * For keyboard, two informations are available. Keys currently pressed, and keys being pressed since the last updat.e occured. Access key using ascii character, eg: if (key_['b']) {...} * For keyboard modifier, use class convenience function |
| InputTextSurface | Implements a TextBox, to let user type text. This is implemented on top of TextSurface, and isn't really nice to render custom text, ie a cursor. Moreover, some problems may exists when user mix special keys and text, especially when the framerate is low (because special keys are not treated in the order they were typed) |
| Library | Dynamic library loader |
| LibraryError | Exception class for dynamic library loader errors |
| Log | Application logger |
| Menu | Generic menu A menu is a collection of Widget with a simple box color in background |
| MenuLight | Implementation of a 'very light' menu. Inherit of 'ClientApp', a crappy class that does all dirty things a stechec client need: handle command line options, configuration file, opens dynamic library, connect to the server, .. |
| MsgBallPos | Ball Position. Client -> Server, only during a kick-off. Server -> Client, at any time of the game |
| MsgBlock | Player blocks an opponent. Client <-> Server |
| MsgBlockDice | Coach chooses a block dice roll result. Client -> Server |
| MsgBlockPush | A Player pushes another Player, due to a block. Client <-> Server |
| MsgBlockResult | Block dices roll result. Server -> Client |
| MsgChat | Coaches have better to play rather than use this... Client <-> Server. FIXME: Handle different charsets |
| MsgCheatDice | Load the next Dice roll result. Client -> Server, used for rules tests |
| MsgDeclare | Declare a Player action. Client <-> Server |
| MsgDrawKicker | Drawn coach chooses to either kick or receive the ball. Server <-> Client |
| MsgEndGame | Game ends, according to the rules. Server -> Client |
| MsgEndTurn | The turn ends. Client <-> Server |
| MsgFollow | Attacker follows the defender after having pushed him. Client <-> Server |
| MsgGiveBall | Changes Ball owner. Client -> Server, after a touchback. Server -> Client, at any time of the game |
| MsgIllegal | A client sent an illegal request. Server -> Client |
| MsgIllegalProc | Coach asks for an illegal procedure. Client <-> Server |
| MsgInitGame | Both coaches and arbiter are ready. Server -> Client |
| MsgInitHalf | A new half-time begins. Server -> Client |
| MsgInitKickoff | Teams and ball placement during a kick-off. Server <-> Client |
| MsgMove | A Player moves of one or several squares. Client <-> Server |
| MsgMoveTurnMarker | Coach moves his turn marker. Client <-> Server |
| MsgMultiBlock | FIXME: NOT IMPLEMENTED. For extra rules. Client <-> Server |
| MsgNewTurn | A new turn begins. Server -> Client |
| MsgPass | A Player throws the ball. Client <-> Server |
| MsgPlayerCreate | Create a Player at the very beginning of the game. Client <-> Server |
| MsgPlayerKnocked | A Player is knocked down to the ground. Client <-> Server |
| MsgPlayerKO | A KO'd Player tries to wakes up, during a break time. Server -> Client |
| MsgPlayerPos | Player Position changed. Client <-> Server |
| MsgPlayerStatus | Player status changed. Client <-> Server |
| MsgReroll | Team reroll use, or result acceptation. Client <-> Server |
| MsgResult | Dice roll result associated to a Player, often agility roll. Server -> Client |
| MsgSkill | A player use one of his skill. Client <-> Server |
| MsgStandUp | A Player stands up. Client <-> Server |
| MsgSync | Synchronization packet. Sent (if rules wish) when an incoming packet is done (processing finished). Server -> Client |
| MsgTeamInfo | Create a Team, at the very beginning of the game. Client <-> Server. FIXME: 'race' info is missing. (note: many others too...) |
| MsgTimer | Timer Synchronization. Client <-> Server |
| MsgTouchdooown | Touchdooown! Server -> Client |
| MsgTurnOver | A turnover happens. Client <-> Server |
| MsgWeather | Current Weather. Server -> Client |
| NetError | Exception class for network errors |
| NetSysError | Exception class for network errors |
| NutsBarrier | Extra memory/time limitation, mainly for AIs |
| Packet | Container for data passed through network |
| PacketHandler< N, T > | Packet Handler |
| PacketSender | Must be derived by somebody already owning BaseRules, in order to really send packet |
| sdlvisu::Panel | Game panel (on the right) |
| Player | Base class describing a BB player |
| Position | Handy class to describe a position. It is just a point, with a set of methods that makes it useful |
| Rect | A rectangle class.
Warning: |
| ResourceCenter | Provide loader (with cache) for SDL resources. This class is a singleton. You can access it from anywhere. It provides image and font loader, with a transparent caching system. It is usually loaded within the SDLWindow class |
| RuleDescription | Rule module description |
| RulesLoader | Helper class that load/initialize/unload rules |
| SActionHandler | Elementary action handler for the server. It memorizes the sequence of pending elementary actions |
| SBall | Ball for the server. It symbolizes the ball, checks all ball manipulations |
| SDLError | Exception thrown by SDL functions |
| SDLWindow | Manage SDL Window. Manage creation of a SDL Window and collect its events into Input class |
| server::Server | Control multiple game, receive new clients, handle spectators.. |
| SPlayer | Player implementation for the server. It symbolizes player and valids and applies action requests |
| SPlayerMsg | Message handler for SPlayer. Forwards messages to requested player, send messages as requested. Checks player existence and game state before forwarding to player |
| Sprite | Enhancement of Surface, give life to object. Have the same behavior of Surface, but have some more features: * can be animated * can be moved from one position to another * can show a part of a larger picture (useful when a picture consists of several 'state') |
| SRules | Rules implementation for the server. It symbolizes the main referee, who manages game state, teams, turns, turnover and score |
| STeam | Team management for the server. It symbolizes team and checks the validity of coach's decisions (reroll and block dices) |
| STeamMsg | Message handler for STeam. Forwards messages to requested team, send messages as requested. Checks team existence and game state before forwarding to team |
| Stechec | Stechec generic binary client. This is by far the most simple client available: it presents no menu, loads a gui/champion/whatever, and runs it once |
| StringManager | Converts between XMLCh* and char* strings, and takes ownership of the newly-created string |
| Surface | Basic encapsulation of SDL_Surface structure. This is the base class to display something (in rectangular shape) on the screen |
| SWeather | Weather management for the server |
| TcpCx | Implements TCP networking. This class implements TCP/IP data connections. Nagle algorithm is turned off, to speed up little but frequent transfers |
| Team< T > | Base class describing a BB team |
| TextButton | Text Button Class This class create a button with a text |
| TextSurface | Class that can draw text, similiar to a TextLabel. Support multi-line and autowrap |
| Timer | Implement a passive timer, with time accuracy in seconds. You have to start, stop, restart, and check the remaining time yourself. The timer can be paused, then re-started |
| TPoint< T > | Handy class to describe a point in x-y coordinate, for GUIs. Conversion from/to Position are made implicit, to avoid mistake |
| TTFError | Exception thrown by TTF functions |
| xml::ValidationHandler | Really throw something on error |
| VirtualScrollableSurface | Scrollable kind of VirtualSurface |
| VirtualSurface | Container for Surface. Other surface (any class derived from Surface) may be attached to VirtualSurface, in a father-child relationship. Rendering is done automatically, using this VirtualSurface as an intermediate SDL_Surface, in a efficient way |
| sdlvisu::VisuField | Game field (on the left) |
| sdlvisu::VisuPlayer | Player class for visu. Player caracteristics are not stored in this class, they are fetched from Api |
| Weather | Base class for storing current match weather |
| Widget | Master Widget Class This class is a virtual class. You need to use a class which inherit from it to do a widget |
| xml::XML | Application interface for XML document reading/writing. This class can manage a very small subset of XML domain. Indeed, this is all TBT requires, to keep the code using it as simple as possible |
| xml::XMLConfig | XML parser/writer tailored for the configuration file. Here the xml structure used: |
| xml::XMLError | Class thrown on error |
| xml::XMLFormation | XML parser/writer tailored for team formation document files |
| xml::XMLInternal | Our internal utilisation of Xerces-C++ |
| xml::XMLTeam | XML parser/writer tailored for team document files |
1.4.7