IODA Bundle
TemplateParameters.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 1996-2012 ECMWF.
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  * In applying this licence, ECMWF does not waive the privileges and immunities
7  * granted to it by virtue of its status as an intergovernmental organisation nor
8  * does it submit to any jurisdiction.
9  */
10 
11 ///
12 /// \file TemplateParameter.h
13 ///
14 /// @author Piotr Kuchta, June 2009
15 
16 #ifndef TemplateParameters_H
17 #define TemplateParameters_H
18 
19 #include <string>
20 #include <stdint.h>
21 
22 #include "odc/core/MetaData.h"
23 
24 namespace eckit { class PathName; }
25 namespace eckit { class DataHandle; }
26 
27 namespace odc {
28 
29 class DispatchingWriter;
30 
32  TemplateParameter(size_t startPos, size_t endPos, size_t columnIndex, std::string name)
34  {}
35 
36  size_t startPos;
37  size_t endPos;
38  size_t columnIndex;
39  std::string name;
40 
41 private:
42 // No copy allowed.
45 };
46 
47 class TemplateParameters : public std::vector<TemplateParameter*> {
48 public:
50  TemplateParameters(const std::string& fileNameTemplate, const core::MetaData& = nullMD);
52 
53  void reset();
54  static TemplateParameters& parse(const std::string& fileNameTemplate, TemplateParameters&, const core::MetaData& = nullMD);
55 
56 private:
60 };
61 
62 } // namespace odc
63 
64 #endif
static TemplateParameters & parse(const std::string &fileNameTemplate, TemplateParameters &, const core::MetaData &=nullMD)
TemplateParameters & operator=(const TemplateParameters &)
static core::MetaData nullMD
TemplateParameters(const TemplateParameters &)
Definition: ColumnInfo.h:23
TemplateParameter(size_t startPos, size_t endPos, size_t columnIndex, std::string name)
TemplateParameter & operator=(const TemplateParameter &)
TemplateParameter(const TemplateParameter &)