SystemVector.cc 863 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
//
// Software License for AMDiS
//
// Copyright (c) 2010 Dresden University of Technology 
// All rights reserved.
// Authors: Simon Vey, Thomas Witkowski et al.
//
// This file is part of AMDiS
//
// See also license.opensource.txt in the distribution.


#include "SystemVector.h"
#include "Serializer.h"

namespace AMDiS {

  void SystemVector::serialize(std::ostream &out) 
  {
    int size = vectors.getSize();
    SerUtil::serialize(out, size);
    for (int i = 0; i < size; i++)
      vectors[i]->serialize(out);
  }


  void SystemVector::deserialize(std::istream &in) 
  {
    int size, oldSize = vectors.getSize();
    SerUtil::deserialize(in, size);
    vectors.resize(size);
    for (int i = oldSize; i < size; i++)
      vectors[i] = new DOFVector<double>(feSpace[i], "");
    for (int i = 0; i < size; i++)
      vectors[i]->deserialize(in);
  }

}