SampleHandler.h 1.88 KB
Newer Older
Francois Gygi committed
1 2
////////////////////////////////////////////////////////////////////////////////
//
Francois Gygi committed
3 4 5 6
// Copyright (c) 2008 The Regents of the University of California
//
// This file is part of Qbox
//
Francois Gygi committed
7 8
// Qbox is distributed under the terms of the GNU General Public License
// as published by the Free Software Foundation, either version 2 of
Francois Gygi committed
9 10 11 12 13 14
// the License, or (at your option) any later version.
// See the file COPYING in the root directory of this distribution
// or <http://www.gnu.org/licenses/>.
//
////////////////////////////////////////////////////////////////////////////////
//
Francois Gygi committed
15 16 17
// SampleHandler.h
//
////////////////////////////////////////////////////////////////////////////////
Francois Gygi committed
18
// $Id: SampleHandler.h,v 1.10 2008-09-08 15:56:19 fgygi Exp $
Francois Gygi committed
19 20 21 22 23

#ifndef SAMPLEHANDLER_H
#define SAMPLEHANDLER_H

#include "StructureHandler.h"
24
#include <string>
Francois Gygi committed
25
#include <vector>
Francois Gygi committed
26 27 28 29 30 31 32
class DoubleMatrix;
class Sample;
class Wavefunction;

class SampleHandler : public StructureHandler
{
  private:
33

Francois Gygi committed
34 35
  Sample& s_;
  DoubleMatrix& gfdata_;
36
  int current_gfdata_pos;
Francois Gygi committed
37 38

  public:
39

Francois Gygi committed
40
  bool read_wf,read_wfv;
41

Francois Gygi committed
42 43 44 45 46
  // Start of the root element in the structure being handled
  virtual void startElement(const XMLCh* const uri,const XMLCh* const localname,
      const XMLCh* const qname, const Attributes& attributes);

  // End of the root element in the structure being handled
47
  virtual void endElement(const XMLCh* const uri, const XMLCh* const localname,
48
      const XMLCh* const qname, std::string& content);
49

Francois Gygi committed
50 51
  // start a subhandler
  virtual StructureHandler* startSubHandler(const XMLCh* const uri,
52
    const XMLCh* const localname, const XMLCh* const qname,
Francois Gygi committed
53
    const Attributes& attributes);
54

Francois Gygi committed
55 56
  // end a subhandler
  virtual void endSubHandler(const XMLCh* const uri,
57
    const XMLCh* const localname, const XMLCh* const qname,
Francois Gygi committed
58 59
    const StructureHandler* const subHandler);

60
  SampleHandler(Sample& s, DoubleMatrix& gfdata);
Francois Gygi committed
61 62 63
  ~SampleHandler();
};
#endif