World Ocean Simulation System (WOSS) library
ssp-woa2005-db-creator.h
Go to the documentation of this file.
1/* WOSS - World Ocean Simulation System -
2 *
3 * Copyright (C) 2009 2025 Federico Guerra
4 * and regents of the SIGNET lab, University of Padova
5 *
6 * Author: Federico Guerra - WOSS@guerra-tlc.com
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation;
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
21
32#ifndef WOSS_SSP_NETCDF_DB_CREATOR_H
33#define WOSS_SSP_NETCDF_DB_CREATOR_H
34
35
36#ifdef WOSS_NETCDF_SUPPORT
37
38#include <memory>
39#include "woss-db-creator.h"
40#include "ssp-woa2005-db.h"
41
42namespace woss {
43
51
52 public:
53
58
59#if defined (WOSS_NETCDF4_SUPPORT)
65#endif // defined (WOSS_NETCDF4_SUPPORT)
66
68
70
71 virtual ~SspWoa2005DbCreator() override = default;
72
74
76
84 virtual std::unique_ptr<WossDbCreator> clone() const override { return std::make_unique<SspWoa2005DbCreator>(*this); }
85
90 virtual std::unique_ptr<WossDb> createWossDb() const override;
91
97
98#if defined (WOSS_NETCDF4_SUPPORT)
103 SspWoa2005DbCreator& setWoaDbType(WOADbType type) { woa_db_type = type; return *this; }
104#endif // defined (WOSS_NETCDF4_SUPPORT)
105
106 protected:
107
108
114 virtual bool initializeDb( WossDb& woss_db ) const override;
115
117 };
118
119}
120
121#endif // WOSS_NETCDF_SUPPORT
122
123
124#endif /* WOSS_SSP_NETCDF_DB_CREATOR_H */
125
WossDbCreator for the custom made NetCDF WOA2005 SSP database.
Definition ssp-woa2005-db-creator.h:50
SspWoa2005DbCreator & operator=(const SspWoa2005DbCreator &copy)=default
virtual ~SspWoa2005DbCreator() override=default
WOADbType getWoaDbType() const
Definition ssp-woa2005-db-creator.h:96
virtual std::unique_ptr< WossDbCreator > clone() const override
Definition ssp-woa2005-db-creator.h:84
virtual bool initializeDb(WossDb &woss_db) const override
Definition ssp-woa2005-db-creator.cpp:68
virtual std::unique_ptr< WossDb > createWossDb() const override
Definition ssp-woa2005-db-creator.cpp:53
SspWoa2005DbCreator(SspWoa2005DbCreator &&tmp)=default
SspWoa2005DbCreator & setWoaDbType(WOADbType type)
Definition ssp-woa2005-db-creator.h:103
SspWoa2005DbCreator & operator=(SspWoa2005DbCreator &&tmp)=default
SspWoa2005DbCreator(const SspWoa2005DbCreator &copy)=default
WOADbType woa_db_type
Definition ssp-woa2005-db-creator.h:116
Abstract class that provides the interface of database creator ( Factory object )
Definition woss-db-creator.h:55
Abstract class that provides the interface of databases.
Definition woss-db.h:79
Definition ac-toolbox-arr-asc-reader.h:44
WOADbType
Definition ssp-woa2005-db.h:98
@ WOA_DB_TYPE_2005
2005 and 2009 NetCDF Db type, 1 degree resolution
Provides the interface for woss::SspWoa2005Db class.
Provides the interface for woss::WossDbCreator class.