framefactory.h

Go to the documentation of this file.
00001 #ifndef TPPROTO_FRAMEFACTORY_H
00002 #define TPPROTO_FRAMEFACTORY_H
00003 /*  FrameCodec - changes network protocol to frame objects
00004  *
00005  *  Copyright (C) 2005, 2006, 2008  Lee Begg and the Thousand Parsec Project
00006  *
00007  *  This program is free software; you can redistribute it and/or modify
00008  *  it under the terms of the GNU General Public License as published by
00009  *  the Free Software Foundation; either version 2 of the License, or
00010  *  (at your option) any later version.
00011  *
00012  *  This program is distributed in the hope that it will be useful,
00013  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  *  GNU General Public License for more details.
00016  *
00017  *  You should have received a copy of the GNU General Public License
00018  *  along with this program; if not, write to the Free Software
00019  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00020  *
00021  */
00022 
00023 
00024 
00032 namespace TPProto{
00033 
00034     class ProtocolLayer;
00035 
00036     class OkFrame;
00037     class FailFrame;
00038     class Sequence;
00039     class Connect;
00040     class AccountCreate;
00041     class Login;
00042     class Redirect;
00043     class GetFeatures;
00044     class Features;
00045     class SetFilters;
00046     class GetGameInfo;
00047     class GameInfo;
00048     class Ping;
00049     class FinishedFrame;
00050     class GetObjectTypesList;
00051     class ObjectTypesList;
00052     class GetObjectDescription;
00053     class ObjectDescription;
00054     class GetObjectById;
00055     class GetObjectByPos;
00056     class Object;
00057     class GetObjectIdsList;
00058     class GetObjectIdsByPos;
00059     class GetObjectIdsByContainer;
00060     class ObjectIdsList;
00061     class GetOrderDescription;
00062     class OrderDescription;
00063     class GetOrderTypesList;
00064     class OrderTypesList;
00065     class GetOrder;
00066     class Order;
00067     class RemoveOrder;
00068     class ProbeOrder;
00069     class GetTime;
00070     class TimeRemaining;
00071     class GetBoard;
00072     class Board;
00073     class GetBoardIdsList;
00074     class BoardIdsList;
00075     class GetMessage;
00076     class Message;
00077     class RemoveMessage;
00078     class GetResourceDescription;
00079     class ResourceDescription;
00080     class GetResourceTypesList;
00081     class ResourceTypesList;
00082     class GetPlayer;
00083     class Player;
00084     class GetCategory;
00085     class Category;
00086     class AddCategory;
00087     class RemoveCategory;
00088     class GetCategoryIdsList;
00089     class CategoryIdsList;
00090     class GetDesign;
00091     class Design;
00092     class AddDesign;
00093     class ModifyDesign;
00094     class RemoveDesign;
00095     class GetDesignIdsList;
00096     class DesignIdsList;
00097     class GetComponent;
00098     class Component;
00099     class GetComponentIdsList;
00100     class ComponentIdsList;
00101     class GetProperty;
00102     class Property;
00103     class GetPropertyIdsList;
00104     class PropertyIdsList;
00105     // admin frame types
00106     class LogMessage;
00107     class GetCommandDescription;
00108     class CommandDescription;
00109     class GetCommandTypesList;
00110     class CommandTypesList;
00111     class Command;
00112     class CommandResult;
00113 
00120     class FrameFactory{
00121     public:
00122         FrameFactory();
00123         virtual ~FrameFactory();
00124 
00125         void setProtocolVersion(int ver);
00126         int getProtocolVersion() const;
00127         void setProtocolLayer(ProtocolLayer* pl);
00128 
00129         virtual OkFrame* createOk();
00130         virtual FailFrame* createFail();
00131         virtual Sequence* createSequence();
00132         virtual Connect* createConnect();
00133         virtual AccountCreate* createAccountCreate();
00134         virtual Login* createLogin();
00135         virtual Redirect* createRedirect();
00136         virtual GetFeatures* createGetFeatures();
00137         virtual Features* createFeatures();
00138         virtual SetFilters* createSetFilters();
00139         virtual GetGameInfo* createGetGameInfo();
00140         virtual GameInfo* createGameInfo();
00141         virtual Ping* createPing();
00142         virtual FinishedFrame* createFinished();
00143         virtual GetObjectTypesList* createGetObjectTypesList();
00144         virtual ObjectTypesList* createObjectTypesList();
00145         virtual GetObjectDescription* createGetObjectDescription();
00146         virtual ObjectDescription* createObjectDescription();
00147         virtual Object* createObject();
00148         virtual GetObjectById* createGetObjectById();
00149         virtual GetObjectByPos* createGetObjectByPos();
00150         virtual GetObjectIdsList* createGetObjectIdsList();
00151         virtual GetObjectIdsByPos* createGetObjectIdsByPos();
00152         virtual GetObjectIdsByContainer* createGetObjectIdsByContainer();
00153         virtual ObjectIdsList* createObjectIdsList();
00154         virtual GetOrderDescription* createGetOrderDescription();
00155         virtual OrderDescription* createOrderDescription();
00156         virtual GetOrderTypesList* createGetOrderTypesList();
00157         virtual OrderTypesList* createOrderTypesList();
00158         virtual GetOrder* createGetOrder();
00159         virtual Order* createOrder();
00160         virtual Order* createInsertOrder();
00161         virtual RemoveOrder* createRemoveOrder();
00162         virtual ProbeOrder* createProbeOrder();
00163         virtual GetTime* createGetTimeRemaining();
00164         virtual TimeRemaining* createTimeRemaining();
00165         virtual GetBoard* createGetBoard();
00166         virtual Board* createBoard();
00167         virtual GetBoardIdsList* createGetBoardIdsList();
00168         virtual BoardIdsList* createBoardIdsList();
00169         virtual GetMessage* createGetMessage();
00170         virtual Message* createMessage();
00171         virtual Message* createPostMessage();
00172         virtual RemoveMessage* createRemoveMessage();
00173         virtual GetResourceDescription* createGetResourceDescription();
00174         virtual ResourceDescription* createResourceDescription();
00175         virtual GetResourceTypesList* createGetResourceTypesList();
00176         virtual ResourceTypesList* createResourceTypesList();
00177         virtual GetPlayer* createGetPlayer();
00178         virtual Player* createPlayer();
00179         virtual GetCategory* createGetCategory();
00180         virtual Category* createCategory();
00181         virtual AddCategory* createAddCategory();
00182         virtual RemoveCategory* createRemoveCategory();
00183         virtual GetCategoryIdsList* createGetCategoryIdsList();
00184         virtual CategoryIdsList* createCategoryIdsList();
00185         virtual GetDesign* createGetDesign();
00186         virtual Design* createDesign();
00187         virtual AddDesign* createAddDesign();
00188         virtual ModifyDesign* createModifyDesign();
00189         virtual RemoveDesign* createRemoveDesign();
00190         virtual GetDesignIdsList* createGetDesignIdsList();
00191         virtual DesignIdsList* createDesignIdsList();
00192         virtual GetComponent* createGetComponent();
00193         virtual Component* createComponent();
00194         virtual GetComponentIdsList* createGetComponentIdsList();
00195         virtual ComponentIdsList* createComponentIdsList();
00196         virtual GetProperty* createGetProperty();
00197         virtual Property* createProperty();
00198         virtual GetPropertyIdsList* createGetPropertyIdsList();
00199         virtual PropertyIdsList* createPropertyIdsList();
00200         // admin frame types
00201         virtual LogMessage* createLogMessage();
00202         virtual GetCommandDescription* createGetCommandDescription();
00203         virtual CommandDescription* createCommandDescription();
00204         virtual GetCommandTypesList* createGetCommandTypesList();
00205         virtual CommandTypesList* createCommandTypesList();
00206         virtual Command* createCommand();
00207         virtual CommandResult* createCommandResult();
00208 
00209     protected:
00212         int pver;
00215         ProtocolLayer* layer;
00216 
00217     };
00218 
00219 }
00220 
00221 #endif

Generated on Tue Jan 6 02:00:45 2009 for libtpproto-cpp by  doxygen 1.5.1