Merge branch 'fixes' into main/rendor-staging
[ryzomcore.git] / ryzom / common / src / game_share / roles.h
blob226a4d3c6a1cc4b48c5c20989d42afb1c209d074
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2020 Jan BOON (Kaetemi) <jan.boon@kaetemi.be>
6 //
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
23 #ifndef RY_ROLES_H
24 #define RY_ROLES_H
26 #include <string>
28 namespace ROLES
31 enum ERole
33 unknown = 0,
34 role_unknown = unknown,
36 fighter,
37 caster,
38 crafter,
39 harvester,
41 NB_ROLES,
44 /**
45 * get the role sheet string from the given enum
46 * \param R is the enum number
47 * \return the string associated to this enum number (Unknown if the enum number not exist)
49 const std::string& toSheetString( ERole r );
51 /**
52 * get the right role string from the given enum
53 * \param R is the enum number
54 * \return the string associated to this enum number (Unknown if the enum number not exist)
56 const std::string& toString( ERole r );
58 /**
59 * get the right role ID from its string
60 * \param str the input string
61 * \return the RoleId associated to this string (unknown if the string cannot be interpreted)
63 ERole toRoleId( const std::string& Role );
65 // Return the Translated name of the Job
66 const std::string &roleToUCString (ERole r);
68 } // ROLES
70 #endif