LSSTApplications  20.0.0
LSSTDataManagementBasePackage
ArchiveIndexSchema.h
Go to the documentation of this file.
1 // -*- lsst-c++ -*-
2 #ifndef AFW_TABLE_IO_ArchiveInputSchema_h_INCLUDED
3 #define AFW_TABLE_IO_ArchiveInputSchema_h_INCLUDED
4 
5 /*
6  * Private singleton shared by the two archive classes; should only be included in their definition
7  * source files.
8  */
9 
10 #include "lsst/base.h"
11 #include "lsst/afw/table/Schema.h"
12 
13 namespace lsst {
14 namespace afw {
15 namespace table {
16 namespace io {
17 
35 struct ArchiveIndexSchema final {
38  Key<int> catArchive; // 'cat.archive' in schema
39  Key<int> catPersistable; // 'cat.persistable' in schema
41  Key<int> nRows; // 'nrows' in schema
44 
45  static int const MAX_NAME_LENGTH = 64;
46  static int const MAX_MODULE_LENGTH = 64;
47 
52  static constexpr int const NO_CATALOGS_SAVED = -1;
53 
55  static ArchiveIndexSchema const& get();
56 
57  // No copying
60 
61  // No moving
64 
65 private:
67 };
68 } // namespace io
69 } // namespace table
70 } // namespace afw
71 } // namespace lsst
72 
73 #endif // !AFW_TABLE_IO_ArchiveInputSchema_h_INCLUDED
lsst::afw::table::io::ArchiveIndexSchema::schema
Schema schema
Definition: ArchiveIndexSchema.h:36
lsst::afw::table::io::ArchiveIndexSchema::id
Key< int > id
Definition: ArchiveIndexSchema.h:37
lsst::afw::table::io::ArchiveIndexSchema::NO_CATALOGS_SAVED
static constexpr int const NO_CATALOGS_SAVED
Special value used for catArchive, catPersistable, and row0 when an object with no state is saved.
Definition: ArchiveIndexSchema.h:52
lsst::afw::table::io::ArchiveIndexSchema::module
Key< std::string > module
Definition: ArchiveIndexSchema.h:43
lsst::afw
Definition: imageAlgorithm.dox:1
lsst::afw::table::io::ArchiveIndexSchema::catArchive
Key< int > catArchive
Definition: ArchiveIndexSchema.h:38
lsst::afw::table::io::ArchiveIndexSchema::get
static ArchiveIndexSchema const & get()
Return the singleton instance.
Definition: ArchiveIndexSchema.cc:14
lsst::afw::table::Schema
Defines the fields and offsets for a table.
Definition: Schema.h:50
lsst::afw::table::io::ArchiveIndexSchema::ArchiveIndexSchema
ArchiveIndexSchema(ArchiveIndexSchema &&)=delete
lsst::afw::table::io::ArchiveIndexSchema::MAX_NAME_LENGTH
static int const MAX_NAME_LENGTH
Definition: ArchiveIndexSchema.h:45
lsst::afw::table::io::ArchiveIndexSchema::row0
Key< int > row0
Definition: ArchiveIndexSchema.h:40
lsst::afw::table::io::ArchiveIndexSchema::name
Key< std::string > name
Definition: ArchiveIndexSchema.h:42
lsst::afw::table::io::ArchiveIndexSchema
Schema for the index catalog that specifies where objects are stored in the data catalogs.
Definition: ArchiveIndexSchema.h:35
lsst::afw::table::Key< int >
base.h
lsst
A base class for image defects.
Definition: imageAlgorithm.dox:1
lsst::afw::table::io::ArchiveIndexSchema::catPersistable
Key< int > catPersistable
Definition: ArchiveIndexSchema.h:39
lsst::afw::table::io::ArchiveIndexSchema::MAX_MODULE_LENGTH
static int const MAX_MODULE_LENGTH
Definition: ArchiveIndexSchema.h:46
lsst::afw::table::io::ArchiveIndexSchema::operator=
ArchiveIndexSchema & operator=(ArchiveIndexSchema &&)=delete
Schema.h
lsst::afw::table::io::ArchiveIndexSchema::operator=
ArchiveIndexSchema & operator=(const ArchiveIndexSchema &)=delete
lsst::afw::table::io::ArchiveIndexSchema::nRows
Key< int > nRows
Definition: ArchiveIndexSchema.h:41
lsst::afw::table::io::ArchiveIndexSchema::ArchiveIndexSchema
ArchiveIndexSchema(const ArchiveIndexSchema &)=delete