9 #ifndef _fei_Graph_Impl_hpp_
10 #define _fei_Graph_Impl_hpp_
12 #include <fei_iosfwd.hpp>
13 #include <fei_SharedPtr.hpp>
14 #include <fei_Graph.hpp>
16 #include <fei_EqnComm.hpp>
24 Graph_Impl(MPI_Comm comm,
int firstLocalRow,
int lastLocalRow);
48 return( localGraphData_ );
54 return( remoteGraphData_);
60 bool prefixLinesWithPoundSign=
true);
76 void addDiagonals(
int numIndices,
int* indices);
79 std::vector<remote_table_type*> remoteGraphData_;
82 int firstLocalRow_, lastLocalRow_;
83 int localProc_, numProcs_;
89 #endif // _fei_Graph_Impl_hpp_
int writeRemoteGraph(FEI_OSTREAM &os)
snl_fei::RaggedTable< snl_fei::MapContig< fei::ctg_set< int > * >, fei::ctg_set< int > > table_type
int addIndices(int row, int len, const int *indices)
Graph_Impl(MPI_Comm comm, int firstLocalRow, int lastLocalRow)
int writeLocalGraph(FEI_OSTREAM &os, bool debug=false, bool prefixLinesWithPoundSign=true)
int getLocalRowLength(int row)
std::vector< remote_table_type * > & getRemoteGraph()
int addSymmetricIndices(int numIndices, int *indices, bool diagonal=false)
int getNumLocalNonzeros() const
table_type * getLocalGraph()