35 #ifndef _VECTORBLOCKSTRUCTURE_HPP_ 36 #define _VECTORBLOCKSTRUCTURE_HPP_ 1
38 #include <boost/shared_ptr.hpp> 39 #include <lifev/core/LifeV.hpp> 40 #include <lifev/core/array/MapEpetra.hpp> 41 #include <lifev/core/array/MapVector.hpp> 51 class VectorBlockStructure
62 typedef MapEpetra map_Type;
65 typedef MapVector<map_Type> mapVector_Type;
71 typedef Epetra_CombineMode combine_Type;
80 VectorBlockStructure();
83 VectorBlockStructure (
const map_Type& map );
91 VectorBlockStructure (
const mapVector_Type& mapVector );
94 VectorBlockStructure (
const VectorBlockStructure& blockStructure );
97 ~VectorBlockStructure() {}
108 void setBlockStructure (
const std::vector<UInt>& blockSizes );
120 void setBlockStructure (
const mapVector_Type& mapVector );
125 void setBlockStructure (
const VectorBlockStructure& blockStructure );
140 ASSERT ( index < M_blockSize.size(),
"Invalid block index" );
141 return M_blockSize[index];
150 ASSERT ( index < M_blockFirstIndex.size(),
"Invalid block index" );
151 return M_blockFirstIndex[index];
159 return M_blockSize.size();
174 std::vector<UInt> M_blockSize;
175 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)