MI - Fimex
CoordinateSystemSliceBuilder.h
Go to the documentation of this file.
1 /*
2  * Fimex, CoordinateSystemSliceBuilder.h
3  *
4  * (C) Copyright 2011, met.no
5  *
6  * Project Info: https://wiki.met.no/fimex/start
7  *
8  * This library is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published by
10  * the Free Software Foundation; either version 2.1 of the License, or
11  * (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
16  * License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
21  * USA.
22  *
23  * Created on: Jun 1, 2011
24  * Author: Heiko Klein
25  */
26 
27 #ifndef COORDINATESYSTEMSLICEBUILDER_H_
28 #define COORDINATESYSTEMSLICEBUILDER_H_
29 
30 
31 #include "SliceBuilder.h"
33 
34 namespace MetNoFimex
35 {
36 
37 // forward decl;
38 class CoordinateSystem;
39 
48 {
49 public:
50  CoordinateSystemSliceBuilder(const CDM& cdm, boost::shared_ptr<const CoordinateSystem> cs);
52 
58 
63  void setReferenceTimePos(size_t refTimePos);
68  void setTimeStartAndSize(size_t start, size_t size);
83  void setAxisStartAndSize(CoordinateAxis::AxisType axisType, size_t start, size_t size);
84 
94 
99  boost::shared_ptr<const CoordinateSystem> getCoordinateSystem() {return cs_;}
100 
101 private:
102  boost::shared_ptr<const CoordinateSystem> cs_;
103  std::vector<std::string> tShape_;
104 };
105 
106 
107 
108 }
109 
110 #endif /* COORDINATESYSTEMSLICEBUILDER_H_ */
void setReferenceTimePos(size_t refTimePos)
AxisType
Definition: CoordinateAxis.h:41
Definition: SliceBuilder.h:46
std::vector< CoordinateAxis::AxisType > getAxisTypes() const
void setAxisStartAndSize(CoordinateAxis::AxisType axisType, size_t start, size_t size)
STL class.
Data structure of the Common Data Model.
Definition: CDM.h:54
virtual ~CoordinateSystemSliceBuilder()
Definition: CoordinateSystemSliceBuilder.h:51
Definition: C_CDMReader.h:35
CoordinateSystemSliceBuilder(const CDM &cdm, boost::shared_ptr< const CoordinateSystem > cs)
boost::shared_ptr< const CoordinateSystem > getCoordinateSystem()
Definition: CoordinateSystemSliceBuilder.h:99
void setTimeStartAndSize(size_t start, size_t size)
Definition: CoordinateSystemSliceBuilder.h:47