source: XIOS/trunk/src/data_input.hpp @ 602

Last change on this file since 602 was 602, checked in by rlacroix, 10 years ago

Fix compilation: new files were forgotten in r599.

File size: 793 bytes
Line 
1#ifndef __XIOS_DATA_INPUT__
2#define __XIOS_DATA_INPUT__
3
4/// XIOS headers ///
5#include "xios_spl.hpp"
6#include "exception.hpp"
7#include "field.hpp"
8
9
10namespace xios
11{
12  class CDataInput
13  {
14    public:
15      /// Input type ///
16      typedef enum { ONE_FILE = 0, MULTI_GROUP, MULTI_FILE } EDataInputType;
17
18      /// Read methods ///
19      StdSize getFieldNbRecords(CField* field);
20      void readFieldData(CField* field);
21      void closeFile(void);
22
23      virtual ~CDataInput(void);
24
25    protected:
26      virtual StdSize getFieldNbRecords_(CField* field) = 0;
27      virtual void readFieldData_(CField* field) = 0;
28      virtual void closeFile_(void) = 0;
29
30      /// Protected properties ///
31      EDataInputType type;
32  }; // class CDataInput
33} // namespace xios
34
35#endif //__XIOS_DATA_INPUT__
Note: See TracBrowser for help on using the repository browser.