1 //////////////////////////////////////////////////////////////////////////////// 2 // Copyright (C) 2004-2011 by The Allacrost Project 3 // Copyright (C) 2012-2016 by Bertram (Valyria Tear) 4 // All Rights Reserved 5 // 6 // This code is licensed under the GNU GPL version 2. It is free software 7 // and you may modify it and/or redistribute it under the terms of this license. 8 // See http://www.gnu.org/copyleft/gpl.html for details. 9 //////////////////////////////////////////////////////////////////////////////// 10 11 #include "global_event_group.h" 12 13 #include "utils/utils_common.h" 14 15 namespace vt_global { 16 17 extern bool GLOBAL_DEBUG; 18 AddNewEvent(const std::string & event_name,int32_t event_value)19void GlobalEventGroup::AddNewEvent(const std::string &event_name, int32_t event_value) 20 { 21 if(DoesEventExist(event_name)) { 22 IF_PRINT_WARNING(GLOBAL_DEBUG) << "an event with the desired name \"" << event_name << "\" already existed in this group: " 23 << _group_name << std::endl; 24 return; 25 } 26 _events.insert(std::make_pair(event_name, event_value)); 27 } 28 GetEvent(const std::string & event_name)29int32_t GlobalEventGroup::GetEvent(const std::string &event_name) 30 { 31 std::map<std::string, int32_t>::iterator event_iter = _events.find(event_name); 32 if(event_iter == _events.end()) { 33 IF_PRINT_WARNING(GLOBAL_DEBUG) << "an event with the specified name \"" << event_name << "\" did not exist in this group: " 34 << _group_name << std::endl; 35 return 0; 36 } 37 return event_iter->second; 38 } 39 SetEvent(const std::string & event_name,int32_t event_value)40void GlobalEventGroup::SetEvent(const std::string &event_name, int32_t event_value) 41 { 42 std::map<std::string, int32_t>::iterator event_iter = _events.find(event_name); 43 if(event_iter == _events.end()) { 44 AddNewEvent(event_name, event_value); 45 return; 46 } 47 event_iter->second = event_value; 48 } 49 50 } // namespace vt_global 51