File: MeshReaderImpl.h

package info (click to toggle)
esys-particle 2.3.4%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 13,036 kB
  • ctags: 10,805
  • sloc: cpp: 80,009; python: 5,872; makefile: 1,243; sh: 313; perl: 225
file content (63 lines) | stat: -rw-r--r-- 1,653 bytes parent folder | download
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/////////////////////////////////////////////////////////////
//                                                         //
// Copyright (c) 2003-2014 by The University of Queensland //
// Centre for Geoscience Computing                         //
// http://earth.uq.edu.au/centre-geoscience-computing      //
//                                                         //
// Primary Business: Brisbane, Queensland, Australia       //
// Licensed under the Open Software License version 3.0    //
// http://www.apache.org/licenses/LICENSE-2.0          //
//                                                         //
/////////////////////////////////////////////////////////////

#ifndef __MESHREADERIMPL_H
#define __MESHREADERIMPL_H

// --- Project includes ---
#include "MeshReader.h"

// --- STL includes ---
#include <string>

using std::string;

// --- IO includes ---
#include <iostream>

using std::istream;

namespace esys
{
  namespace lsm
  {
    /*!
      \class MeshReader::Impl
      \brief implementation details for the mesh reader. 
      Decouples Interface from implementation.

      \author Steffen Abe
      $Date$
      $Revision$
    */
    class MeshReader::Impl
    {
    public:
      // types
      typedef std::auto_ptr<NodeReader> NodeReaderPtr;
      typedef std::auto_ptr<TriReader>  TriReaderPtr;
      typedef std::auto_ptr<istream>    IStreamPtr;

      // variables
      NodeReaderPtr m_node_reader_ptr;
      TriReaderPtr  m_tri_reader_ptr;
      IStreamPtr    m_istream_ptr;
      string m_file_name;

      // functions

      Impl(const string&);
      void initialise();
    };
  }
}
#endif // __MESHREADERIMPL_H