Removed AlgebraicNotation from the variant API.
[tagua/yd.git] / src / fwd.h
blob14e7bce33788a5407db3a460aa06596c2211bee9
1 /*
2 Copyright (c) 2006 Paolo Capriotti <p.capriotti@sns.it>
3 (c) 2006 Maurizio Monge <maurizio.monge@kdemail.net>
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 */
11 #ifndef FWD_H
12 #define FWD_H
14 #include <boost/shared_ptr.hpp>
16 typedef boost::shared_ptr<class AbstractMove> MovePtr;
17 typedef boost::shared_ptr<class AbstractPosition> PositionPtr;
18 typedef boost::shared_ptr<class AbstractPool> PoolPtr;
19 typedef boost::shared_ptr<class AbstractPiece> PiecePtr;
20 typedef boost::shared_ptr<class AbstractAnimator> AnimatorPtr;
21 typedef boost::shared_ptr<class ICSAPI> ICSAPIPtr;
22 typedef boost::shared_ptr<class VariantInfo> VariantPtr;
24 template <typename Variant> class UnwrappedGraphicalAPI;
25 template <typename Variant>
26 struct UnwrappedGraphicalAPIPtr {
27 typedef boost::shared_ptr<UnwrappedGraphicalAPI<Variant> > type;
30 namespace HLVariant {
31 template <typename Variant> class UnwrappedGraphicalAPI;
32 template <typename Variant>
33 struct UnwrappedGraphicalAPIPtr {
34 typedef boost::shared_ptr<UnwrappedGraphicalAPI<Variant> > type;
38 typedef boost::shared_ptr<class Animation> AnimationPtr;
39 typedef boost::shared_ptr<class AnimationGroup> AnimationGroupPtr;
40 typedef boost::shared_ptr<class DropAnimation> DropAnimationPtr;
41 typedef boost::shared_ptr<class PromotionAnimation> PromotionAnimationPtr;
42 typedef boost::shared_ptr<class CaptureAnimation> CaptureAnimationPtr;
43 typedef boost::shared_ptr<class InstantAnimation> InstantAnimationPtr;
44 typedef boost::shared_ptr<class DelayAnimation> DelayAnimationPtr;
45 typedef boost::shared_ptr<class MovementAnimation> MovementAnimationPtr;
46 typedef boost::shared_ptr<class FadeAnimation> FadeAnimationPtr;
47 typedef boost::shared_ptr<class GrowAnimation> GrowAnimationPtr;
48 typedef boost::shared_ptr<class ExplodeAnimation> ExplodeAnimationPtr;
49 typedef boost::shared_ptr<class TeleportAnimation> TeleportAnimationPtr;
50 typedef boost::shared_ptr<class CrossFadingAnimation> CrossFadingAnimationPtr;
52 namespace Animate { class Scheme; }
53 typedef boost::shared_ptr<Animate::Scheme> SchemePtr;
55 typedef boost::shared_ptr<class Sprite> SpritePtr;
57 typedef boost::shared_ptr<class Game> GamePtr;
59 #endif //FWD_H