fei::Graph Class Reference

#include <fei_Graph.hpp>

Inheritance diagram for fei::Graph:

Inheritance graph
[legend]
List of all members.

Public Types

typedef snl_fei::RaggedTable<
snl_fei::MapContig< fei::ctg_set<
int > * >, fei::ctg_set<
int > > 
table_type
typedef fei::ctg_set< int > table_row_type
typedef snl_fei::RaggedTable<
std::map< int, fei::ctg_set<
int > * >, fei::ctg_set<
int > > 
remote_table_type

Public Member Functions

virtual ~Graph ()
virtual int addIndices (int row, int len, const int *indices)=0
virtual int addSymmetricIndices (int numIndices, int *indices, bool diagonal=false)=0
virtual int gatherFromOverlap ()=0
virtual table_typegetLocalGraph ()=0
virtual std::vector< remote_table_type * > & getRemoteGraph ()=0
virtual int writeLocalGraph (FEI_OSTREAM &os, bool debug=false, bool prefixLinesWithPoundSign=true)=0
virtual int writeRemoteGraph (FEI_OSTREAM &os)=0

Detailed Description

Basic algebraic matrix-graph representation.

Definition at line 20 of file fei_Graph.hpp.


Member Typedef Documentation

typedef snl_fei::RaggedTable<snl_fei::MapContig<fei::ctg_set<int>*>,fei::ctg_set<int> > fei::Graph::table_type

alias for the 'table_type' data container

Definition at line 28 of file fei_Graph.hpp.

typedef fei::ctg_set<int> fei::Graph::table_row_type

alias for table_row_type, which is a row of the table

Definition at line 31 of file fei_Graph.hpp.

typedef snl_fei::RaggedTable<std::map<int,fei::ctg_set<int>*>,fei::ctg_set<int> > fei::Graph::remote_table_type

alias for the type of the remotely-owned portion of the table data

Definition at line 35 of file fei_Graph.hpp.


Constructor & Destructor Documentation

virtual fei::Graph::~Graph (  )  [inline, virtual]

destructor

Definition at line 24 of file fei_Graph.hpp.


Member Function Documentation

virtual int fei::Graph::addIndices ( int  row,
int  len,
const int *  indices 
) [pure virtual]

Add indices to a specified row of the table

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual int fei::Graph::addSymmetricIndices ( int  numIndices,
int *  indices,
bool  diagonal = false 
) [pure virtual]

Add a symmetric block of indices. The array of indices will serve as both row-numbers, and as column-numbers in those rows.

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual int fei::Graph::gatherFromOverlap (  )  [pure virtual]

gather all remotely-owned table portions to owning processors

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual table_type* fei::Graph::getLocalGraph (  )  [pure virtual]

Retrieve the local portion of the graph. i.e., The rows which correspond to locally-owned IDs.

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual std::vector<remote_table_type*>& fei::Graph::getRemoteGraph (  )  [pure virtual]

Retrieve the remotely-owned portion of the graph.

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual int fei::Graph::writeLocalGraph ( FEI_OSTREAM &  os,
bool  debug = false,
bool  prefixLinesWithPoundSign = true 
) [pure virtual]

Write locally-owned portion of the graph to a specified ostream.

Implemented in fei::Graph_Impl, and fei::GraphReducer.

virtual int fei::Graph::writeRemoteGraph ( FEI_OSTREAM &  os  )  [pure virtual]

Write remotely-owned portion of the graph to a specified ostream.

Implemented in fei::Graph_Impl, and fei::GraphReducer.


The documentation for this class was generated from the following file:
Generated on Mon Jul 12 09:31:42 2010 for FEI by  doxygen 1.4.7