diff options
author | schnetter <> | 2004-03-23 11:40:00 +0000 |
---|---|---|
committer | schnetter <> | 2004-03-23 11:40:00 +0000 |
commit | 14cb6d98f2a1aa53d455f560b7b76134459b5b49 (patch) | |
tree | 2b9c5892a7dbba675fc014c88575403d470d17ec /Carpet/CarpetLib/src/data.hh | |
parent | b6ae9419e78279c0d766b3bb95cbc52e1456cdb9 (diff) |
Implement vector groups correctly
darcs-hash:20040323114027-07bb3-1ac44b7b144e8936307942bc999d54ecb579719f.gz
Diffstat (limited to 'Carpet/CarpetLib/src/data.hh')
-rw-r--r-- | Carpet/CarpetLib/src/data.hh | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/Carpet/CarpetLib/src/data.hh b/Carpet/CarpetLib/src/data.hh index a6658e23e..85e8a28fe 100644 --- a/Carpet/CarpetLib/src/data.hh +++ b/Carpet/CarpetLib/src/data.hh @@ -1,4 +1,4 @@ -// $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetLib/src/data.hh,v 1.17 2004/03/23 12:14:29 schnetter Exp $ +// $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetLib/src/data.hh,v 1.18 2004/03/23 12:40:27 schnetter Exp $ #ifndef DATA_HH #define DATA_HH @@ -30,13 +30,21 @@ class data: public gdata<D> { // Fields T* _storage; // the data (if located on this processor) + + int vectorlength; + int vectorindex; + data* vectorleader; public: // Constructors data (const int varindex = -1, - const operator_type transport_operator = op_error); + const operator_type transport_operator = op_error, + const int vectorlength = 1, const int vectorindex = 0, + data* const vectorleader = NULL); data (const int varindex, const operator_type transport_operator, + const int vectorlength, const int vectorindex, + data* const vectorleader, const ibbox& extent, const int proc); // Destructors @@ -52,6 +60,10 @@ public: virtual void free (); virtual void transfer_from (gdata<D>* gsrc); +private: + T* vectordata (const int vectorindex) const; +public: + // Processor management virtual void change_processor (comm_state<D>& state, const int newproc, void* const mem=0); |