Merge branch '138-toggle-free-look-with-hotkey' into main/gingo-test
[ryzomcore.git] / ryzom / client / src / faction_war_manager.h
blob409192d5397ccdfef55805696d3f42e369c21672
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
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.
8 //
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 CL_FACTION_WAR_MANAGER_H
20 #define CL_FACTION_WAR_MANAGER_H
22 /////////////
23 // INCLUDE //
24 /////////////
25 #include "nel/misc/types_nl.h"
26 #include "game_share/pvp_clan.h"
29 ///////////
30 // CLASS //
31 ///////////
32 /**
33 * All active faction wars
34 * \author Stephane Coutelas
35 * \author Nevrax France
36 * \date 2005
38 class CFactionWarManager
40 public:
41 /// singleton init
42 static void init();
43 /// singleton release
44 static void release();
45 /// instance accessor
46 static CFactionWarManager * getInstance();
48 /// add a faction war
49 void addFactionWar(PVP_CLAN::CFactionWar fw);
50 /// stop a faction war
51 void stopFactionWar(PVP_CLAN::CFactionWar fw);
53 /// true if there's a conflict between the two factions
54 bool areFactionsInWar(PVP_CLAN::TPVPClan clan1, PVP_CLAN::TPVPClan clan2);
56 private:
57 /// ctor
58 CFactionWarManager(){}
59 /// dtor
60 ~CFactionWarManager();
62 /// unique instance
63 static CFactionWarManager * _Instance;
65 /// faction wars
66 std::vector< PVP_CLAN::CFactionWar > _FactionWarOccurs;
70 #endif // CL_FACTION_WAR_MANAGER_H
72 /* End of faction_war_manager.h */