1#ifndef _NodeDatabase_hpp_
2#define _NodeDatabase_hpp_
12#include "fei_macros.hpp"
15#include "fei_NodeDescriptor.hpp"
16#include "fei_Pool_alloc.hpp"
83 std::map<GlobalID,int>&
getNodeIDs() {
return( nodeIDs_ ); };
201 std::vector<NodeDescriptor*> nodePtrs_;
203 std::vector<int> eqnNumbers_;
207 std::vector<int> eqnNodeIndices_;
212 std::map<GlobalID,int> nodeIDs_;
215 std::map<int,int> nodeNumbers_;
218 bool need_to_alloc_and_sync_;
220 std::map<int,int>* fieldDB_;
224 int firstLocalNodeNumber_, lastLocalNodeNumber_;
int getIndexOfID(GlobalID nodeID) const
int synchronize(int firstLocalNodeNumber, int firstLocalEqn, int localRank, MPI_Comm comm)
int getNodeWithID(GlobalID nodeID, const NodeDescriptor *&node) const
int getNodeWithNumber(int nodeNumber, const NodeDescriptor *&node) const
int getAssociatedNodeNumber(int eqnNumber)
int getNodeWithEqn(int eqnNumber, const NodeDescriptor *&node) const
int initNodeIDs(GlobalID *nodeIDs, int numNodes)
std::map< GlobalID, int > & getNodeIDs()
NodeDatabase(std::map< int, int > *fieldDatabase, NodeCommMgr *nodeCommMgr)
int countLocalNodalEqns(int localRank)
void getNodeAtIndex(int i, const NodeDescriptor *&node) const
int getAssociatedFieldID(int eqnNumber)
int getNumNodeDescriptors() const
int initNodeID(GlobalID nodeID)
int countLocalNodeDescriptors(int localRank)