GPUdb C++ API  Version 6.2.0.3
aggregate_min_max.h
Go to the documentation of this file.
1 /*
2  * This file was autogenerated by the GPUdb schema processor.
3  *
4  * DO NOT EDIT DIRECTLY.
5  */
6 #ifndef __AGGREGATE_MIN_MAX_H__
7 #define __AGGREGATE_MIN_MAX_H__
8 
9 namespace gpudb
10 {
11 
20  {
21 
27  tableName(std::string()),
28  columnName(std::string()),
29  options(std::map<std::string, std::string>())
30  {
31  }
32 
45  AggregateMinMaxRequest(const std::string& tableName_, const std::string& columnName_, const std::map<std::string, std::string>& options_):
46  tableName( tableName_ ),
47  columnName( columnName_ ),
48  options( options_ )
49  {
50  }
51 
52  std::string tableName;
53  std::string columnName;
54  std::map<std::string, std::string> options;
55  };
56 }
57 
58 namespace avro
59 {
60  template<> struct codec_traits<gpudb::AggregateMinMaxRequest>
61  {
62  static void encode(Encoder& e, const gpudb::AggregateMinMaxRequest& v)
63  {
64  ::avro::encode(e, v.tableName);
65  ::avro::encode(e, v.columnName);
66  ::avro::encode(e, v.options);
67  }
68 
69  static void decode(Decoder& d, gpudb::AggregateMinMaxRequest& v)
70  {
71  if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
72  {
73  const std::vector<size_t> fo = rd->fieldOrder();
74 
75  for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
76  {
77  switch (*it)
78  {
79  case 0:
80  ::avro::decode(d, v.tableName);
81  break;
82 
83  case 1:
84  ::avro::decode(d, v.columnName);
85  break;
86 
87  case 2:
88  ::avro::decode(d, v.options);
89  break;
90 
91  default:
92  break;
93  }
94  }
95  }
96  else
97  {
98  ::avro::decode(d, v.tableName);
99  ::avro::decode(d, v.columnName);
100  ::avro::decode(d, v.options);
101  }
102  }
103  };
104 }
105 
106 namespace gpudb
107 {
108 
117  {
118 
124  min(double()),
125  max(double())
126  {
127  }
128 
129  double min;
130  double max;
131  };
132 }
133 
134 namespace avro
135 {
136  template<> struct codec_traits<gpudb::AggregateMinMaxResponse>
137  {
138  static void encode(Encoder& e, const gpudb::AggregateMinMaxResponse& v)
139  {
140  ::avro::encode(e, v.min);
141  ::avro::encode(e, v.max);
142  }
143 
144  static void decode(Decoder& d, gpudb::AggregateMinMaxResponse& v)
145  {
146  if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
147  {
148  const std::vector<size_t> fo = rd->fieldOrder();
149 
150  for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
151  {
152  switch (*it)
153  {
154  case 0:
155  ::avro::decode(d, v.min);
156  break;
157 
158  case 1:
159  ::avro::decode(d, v.max);
160  break;
161 
162  default:
163  break;
164  }
165  }
166  }
167  else
168  {
169  ::avro::decode(d, v.min);
170  ::avro::decode(d, v.max);
171  }
172  }
173  };
174 }
175 
176 #endif
std::map< std::string, std::string > options
AggregateMinMaxResponse()
Constructs an AggregateMinMaxResponse object with default parameter values.
AggregateMinMaxRequest(const std::string &tableName_, const std::string &columnName_, const std::map< std::string, std::string > &options_)
Constructs an AggregateMinMaxRequest object with the specified parameters.
AggregateMinMaxRequest()
Constructs an AggregateMinMaxRequest object with default parameter values.
A set of input parameters for aggregateMinMax(const AggregateMinMaxRequest&) const.
A set of output parameters for aggregateMinMax(const AggregateMinMaxRequest&) const.