17#define fei_file "snl_fei::SubdMsgHandler"
54 FEI_COUT <<
"SubdMsdHandler: destProc: " << destProc <<
", list is NULL."<<
FEI_ENDL;
58 messageLength = list->size();
64 std::vector<int>& message)
68 int* msgPtr = &message[0];
71 fei::comm_map::row_type::const_iterator
72 id_iter = ids->begin(),
76 for(; id_iter != id_end; ++id_iter) {
95 std::vector<int>& message)
98 fei::comm_map::row_type::const_iterator
99 id_iter = ids->begin(),
102 int* msgPtr = &message[0];
104 if (message.size() != ids->size()) {
109 for(; id_iter != id_end; ++id_iter) {
112 bool isInRemoteSubdomain = msgPtr[offset++] > 1 ? true :
false;
114 if (isInRemoteSubdomain) {
std::vector< int > & getRecvProcs()
int getSendMessage(int destProc, std::vector< int > &message)
fei::SharedIDs< int > * subdomainIDTable_
virtual ~SubdMsgHandler()
std::vector< int > & getSendProcs()
fei::comm_map * sendPattern_
fei::SharedIDs< int > * sharedIDTable_
fei::comm_map * recvPattern_
std::vector< int > recvProcs_
RecordCollection * recordCollection_
SubdMsgHandler(RecordCollection *recordCollection, fei::SharedIDs< int > *sharedIDTable, fei::SharedIDs< int > *subdomainIDTable)
std::vector< int > sendProcs_
int getSendMessageLength(int destProc, int &messageLength)
int processRecvMessage(int srcProc, std::vector< int > &message)
void copyKeysToVector(const MAP_TYPE &map_obj, std::vector< int > &keyvector)