9 #ifndef _fei_SharedIDs_hpp_
10 #define _fei_SharedIDs_hpp_
12 #include <fei_macros.hpp>
26 : sharedIDs_(), owningProcs_()
31 : sharedIDs_(src.sharedIDs_), owningProcs_(src.owningProcs_)
38 typedef std::map<T,std::set<int> >
map_type;
45 void addSharedID(
const T& ID,
size_t numSharingProcs,
const int* sharingProcs)
47 typename map_type::iterator iter = sharedIDs_.find(ID);
48 if (iter == sharedIDs_.end()) {
49 iter = sharedIDs_.insert(std::make_pair(ID,std::set<int>())).first;
51 for(
size_t i=0; i<numSharingProcs; ++i) {
52 iter->second.insert(sharingProcs[i]);
68 const std::vector<int>&
getOwningProcs()
const {
return( owningProcs_ ); }
72 std::vector<int> owningProcs_;
77 #endif // _fei_SharedIDs_hpp_
std::vector< int > & getOwningProcs()
std::map< T, std::set< int > > map_type
map_type & getSharedIDs()
void addSharedID(const T &ID, size_t numSharingProcs, const int *sharingProcs)