36 #ifndef VECTOR_BLOCK_MONOLITHIC_EPETRA_H    37 #define VECTOR_BLOCK_MONOLITHIC_EPETRA_H 1
    39 #include <lifev/core/LifeV.hpp>    41 #include <lifev/core/array/MapEpetra.hpp>    42 #include <lifev/core/array/VectorEpetra.hpp>    43 #include <lifev/core/array/MapVector.hpp>    44 #include <lifev/core/array/VectorBlockMonolithicEpetraView.hpp>    46 #include <boost/shared_ptr.hpp>    71 class VectorBlockMonolithicEpetra
    83     typedef MapEpetra map_Type;
    86     typedef MapVector<map_Type> mapVector_type;
    92     typedef Epetra_CombineMode combine_type;
    95     typedef VectorBlockMonolithicEpetraView block_type;
    98     typedef std::shared_ptr<block_type> block_ptrType;
   107     VectorBlockMonolithicEpetra ( 
const map_Type& map, 
const mapType_type& mapType = 
Unique);
   115     VectorBlockMonolithicEpetra ( 
const mapVector_type& mapVector, 
const mapType_type& mapType = 
Unique);
   118     VectorBlockMonolithicEpetra ( 
const VectorBlockMonolithicEpetra& vector);
   121     VectorBlockMonolithicEpetra ( 
const VectorBlockMonolithicEpetra& vector, 
const mapType_type& mapType);
   124     VectorBlockMonolithicEpetra ( 
const VectorBlockMonolithicEpetra& vector, 
const mapType_type& mapType, 
const combine_type& combineMode);
   127     ~VectorBlockMonolithicEpetra() {}
   138     void setBlockStructure ( 
const std::vector<UInt>& blockSizes );
   150     void setBlockStructure ( 
const mapVector_type& mapVector);
   165         ASSERT ( index < M_blockSize.size(), 
"Invalid block index");
   166         return M_blockSize[index];
   174     void blockView ( 
const UInt& index, block_type& blockView);
   181     block_ptrType block ( 
const UInt& index);
   187     std::vector<UInt> M_blockSize;
   188     std::vector<UInt> M_blockFirstIndex;
 void assignFunction(bcBase_Type &base)
Assign the function to the base of the BCHandler. 
 
double Real
Generic real data. 
 
uint32_type UInt
generic unsigned integer (used mainly for addressing)