federatelevellist.cc
来自「certi-SHM-3.0.tar 不错的开源的分布式方针软件 大家多多支持 他」· CC 代码 · 共 82 行
CC
82 行
// -*- mode:C++ ; tab-width:4 ; c-basic-offset:4 ; indent-tabs-mode:nil -*-// ----------------------------------------------------------------------------// CERTI - HLA RunTime Infrastructure// Copyright (C) 2002, 2003 ONERA//// This file is part of CERTI-libCERTI//// CERTI-libCERTI is free software ; you can redistribute it and/or// modify it under the terms of the GNU Lesser General Public License// as published by the Free Software Foundation ; either version 2 of// the License, or (at your option) any later version.//// CERTI-libCERTI is distributed in the hope that it will be useful, but// WITHOUT ANY WARRANTY ; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU// Lesser General Public License for more details.//// You should have received a copy of the GNU Lesser General Public// License along with this program ; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307// USA//// $Id: FederateLevelList.cc,v 3.7 2003/03/04 17:32:24 breholee Exp $// ----------------------------------------------------------------------------#include <config.h>#include "FederateLevelList.hh"namespace certi {// ----------------------------------------------------------------------------//! add a new federate to Tuple./*! Register a new federate principal name, and associate the given level with it.*/voidFederateLevelList::addFederate(const char *the_name, SecurityLevelID the_level_id){ if ((the_name == NULL) || (strlen(the_name) > MAX_FEDERATE_NAME_LENGTH)) throw RTIinternalError("Federate Name too long(principal name)."); char *nameCopy = strdup(the_name); if (nameCopy == NULL) throw RTIinternalError("Could not allocate memory."); tuple[nameCopy] = the_level_id ;}//! FederateLevelList constructor.FederateLevelList::FederateLevelList(void){}//! Empty map before destroying instance.FederateLevelList::~FederateLevelList(void){ while (!tuple.empty()) { free((*tuple.begin()).first); tuple.erase(tuple.begin()); }}// getLevel returns the level id associated the federate name given.SecurityLevelIDFederateLevelList::getLevel(const char *theName) const{ std::map<char *, SecurityLevelID>::const_iterator i ; i = tuple.find((char *) theName); if (i != tuple.end()) return (*i).second ; return PublicLevelID ;}}// $Id: FederateLevelList.cc,v 3.7 2003/03/04 17:32:24 breholee Exp $
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?