22 int main(
int argc, 
char** argv) {
 
   27     if (argc < 3 || argc > 4) 
throw std::logic_error(
"Bad number of arguments.");
 
   28     string srcfile{argv[1]};
 
   29     string srcmode{argv[2]};
 
   30     Group src = (srcmode == 
"memmap")
 
   34     std::map<string, Group> grps{
 
   36                                                Engines::BackendCreateModes::Truncate_If_Exists)},
 
   40       std::cout << 
"Testing " << 
name << std::endl;
 
   45       std::cout << 
"Done testing " << 
name << std::endl;
 
   55       string backend{argv[3]};
 
   56       if (grps.count(backend))
 
   57         doTest(backend, src, grps.at(backend));
 
   63       for (
auto& b : grps) doTest(b.first, src, b.second);
 
   67   } 
catch (
const std::exception& e) {
 
   71     std::cerr << 
"Unhandled exception\n";
 
Generic copying facility.
 
Interfaces for ioda::Group and related classes.
 
Groups are a new implementation of ObsSpaces.
 
Allows you to select objects for a copy operation.
 
int main(int argc, char **argv)
 
IODA_DL Group createFile(const std::string &filename, BackendCreateModes mode, HDF5_Version_Range compat=defaultVersionRange())
Create a ioda::Group backed by an HDF5 file.
 
IODA_DL Group openFile(const std::string &filename, BackendOpenModes mode, HDF5_Version_Range compat=defaultVersionRange())
Open a ioda::Group backed by an HDF5 file.
 
IODA_DL std::string genUniqueName()
Convenience function to generate a random file name.
 
IODA_DL Group openMemoryFile(const std::string &filename, BackendOpenModes mode=BackendOpenModes::Read_Only, bool flush_on_close=false, size_t increment_len_bytes=1000000, HDF5_Version_Range compat=defaultVersionRange())
Map an HDF5 file in memory and open a ioda::Group.
 
IODA_DL Group createMemoryFile(const std::string &filename, BackendCreateModes mode, bool flush_on_close=false, size_t increment_len_bytes=1000000, HDF5_Version_Range compat=defaultVersionRange())
Create a ioda::Group backed by the HDF5 in-memory-store.
 
IODA_DL Group createRootGroup()
Create a ioda::Group backed by an OsbStore Group object.
 
IODA_DL void unwind_exception_stack(const std::exception &e, std::ostream &out=std::cerr, int level=0)
Convenience function for unwinding an exception stack.
 
IODA_DL void copy(const ObjectSelection &from, ObjectSelection &to, const ScaleMapping &scale_map)
Generic data copying function.
 
Settings for how to remap dimension scales.