IODA Bundle
BufrIntCollector.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2020 NOAA/NWS/NCEP/EMC
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  */
7 
8 #include "BufrAccumulator.h"
9 #include "BufrCollector.h"
11 #include "BufrParser/BufrTypes.h"
12 
13 #pragma once
14 
15 namespace Ingester
16 {
17  /// \brief Collector that uses the BUFR interface ufbint call to grab data (single col data).
19  {
20  public:
21  explicit BufrIntCollector(const int fortranFileId, const BufrMnemonicSet& mnemonicSet);
22  ~BufrIntCollector() = default;
23 
24  /// \brief Grab the next section of data
25  void collect() final;
26 
27  private:
28  /// \brief Pre-allocated buffer to hand to the Fortran interface.
29  std::vector<double> scratchData_;
31  };
32 } // namespace Ingester
33 
Collectors know how to use the BUFR interface to grab data associated with configured mnemonicSets.
Definition: BufrCollector.h:25
Collector that uses the BUFR interface ufbint call to grab data (single col data).
BufrIntCollector(const int fortranFileId, const BufrMnemonicSet &mnemonicSet)
std::vector< FloatType > floatTypeScratchData_
std::vector< double > scratchData_
Pre-allocated buffer to hand to the Fortran interface.
void collect() final
Grab the next section of data.
Defenition of BUFR mnemonics and associated channels of interest.
float FloatType
Definition: IngesterTypes.h:18
Definition: encode.cc:30