1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
19 #ifndef RYAI_AIS_MESSAGES_H
20 #define RYAI_AIS_MESSAGES_H
22 #include "nel/misc/types_nl.h"
23 #include "nel/misc/time_nl.h"
24 #include "nel/misc/sheet_id.h"
25 #include "nel/misc/entity_id.h"
27 #include "nel/net/transport_class.h"
30 //----------------------------------------------------------------
31 // AIDS -> AIS: Upload a manager definition script
33 class CMsgAIUploadActions
: public NLNET::CTransportClass
42 CMsgAIUploadActions(std::string data
)
47 virtual void description ()
49 className ("CMsgAIUploadActions");
50 property (std::string("data"), PropString
, std::string(), Data
);
53 virtual void callback (const std::string
&name
, NLNET::TServiceId id
);
57 //----------------------------------------------------------------
58 // AIDS -> AIS: Start Managers
60 class CMsgAISpawnMgrs
: public NLNET::CTransportClass
63 std::vector
<uint16
> MgrId
;
69 CMsgAISpawnMgrs(uint16 mgrId
,const std::string
&name
)
71 MgrId
.push_back(mgrId
);
74 virtual void description ()
76 className ("CMsgAISpawnMgrs");
77 propertyCont ("mgrId", PropUInt16
, MgrId
);
80 virtual void callback (const std::string
&name
, NLNET::TServiceId id
);
84 //----------------------------------------------------------------
85 // AIDS -> AIS: Save, stop and unload Managers
87 class CMsgAIDespawnMgrs
: public NLNET::CTransportClass
90 std::vector
<uint16
> MgrId
;
96 CMsgAIDespawnMgrs(uint16 mgrId
)
98 MgrId
.push_back(mgrId
);
101 virtual void description ()
103 className ("CMsgAIDespawnMgrs");
104 propertyCont ("mgrId", PropUInt16
, MgrId
);
107 virtual void callback (const std::string
&name
, NLNET::TServiceId id
);
111 //----------------------------------------------------------------
112 // AIDS -> AIS: Save managers' backups
114 class CMsgAIBackupMgrs
: public NLNET::CTransportClass
117 std::vector
<uint16
> MgrId
;
123 CMsgAIBackupMgrs(uint16 mgrId
)
125 MgrId
.push_back(mgrId
);
128 virtual void description ()
130 className ("CMsgAIBackupMgrs");
131 propertyCont ("mgrId", PropUInt16
, MgrId
);
134 virtual void callback (const std::string
&name
, NLNET::TServiceId id
);
138 //----------------------------------------------------------------
139 // AIDS -> AIS: Close managers and unload from RAM
141 class CMsgAICloseMgrs
: public NLNET::CTransportClass
144 std::vector
<uint16
> MgrId
;
150 CMsgAICloseMgrs(uint16 mgrId
)
152 MgrId
.push_back(mgrId
);
155 virtual void description ()
157 className ("CMsgAICloseMgrs");
158 propertyCont ("mgrId", PropUInt16
, MgrId
);
161 virtual void callback (const std::string
&name
, NLNET::TServiceId id
);