23 #ifndef AFW_TABLE_Simple_h_INCLUDED
24 #define AFW_TABLE_Simple_h_INCLUDED
34 namespace lsst {
namespace afw {
namespace table {
221 #endif // !AFW_TABLE_Simple_h_INCLUDED
Defines the fields and offsets for a table.
int contains(Schema const &other, int flags=EQUAL_KEYS) const
Test whether the given schema is a subset of this.
void disconnectAliases()
Sever the connection between this schema and any others with which it shares aliases.
void setDec(Angle dec)
Convenience accessors for the keys in the minimal reference schema.
Key< geom::Angle > getDec() const
Return a constituent Key.
Angle getDec() const
Convenience accessors for the keys in the minimal reference schema.
boost::shared_ptr< SimpleRecord > copyRecord(BaseRecord const &other)
Deep-copy a record, requiring that it have the same schema as this table.
Writer object for FITS binary tables.
IcrsCoord getCoord() const
Convenience accessors for the keys in the minimal reference schema.
void setIdFactory(boost::shared_ptr< IdFactory > f)
Switch to a new IdFactory – object that generates IDs for the table (may be null).
static boost::shared_ptr< IdFactory > makeSimple()
Return a simple IdFactory that simply counts from 1.
SimpleRecord(boost::shared_ptr< SimpleTable > const &table)
static Schema makeMinimalSchema()
Return a minimal schema for Simple tables and records.
SortedCatalogT< Record const > ConstCatalog
afw::table::Schema schema
A mapping between the keys of two Schemas, used to copy data between them.
ColumnViewT< SimpleRecord > ColumnView
void setId(RecordId id)
Convenience accessors for the keys in the minimal reference schema.
boost::shared_ptr< SimpleTable const > getTable() const
ColumnViewT< SimpleRecord > ColumnView
virtual boost::shared_ptr< io::FitsWriter > makeFitsWriter(fits::Fits *fitsfile, int flags) const
boost::shared_ptr< SimpleRecord > makeRecord()
Default-construct an associated record.
boost::shared_ptr< SimpleTable > clone() const
Return a polymorphic deep copy of the table.
static Key< RecordId > getIdKey()
Get keys for standard fields shared by all references.
boost::shared_ptr< IdFactory > getIdFactory()
Return the object that generates IDs for the table (may be null).
void setCoord(IcrsCoord const &coord)
Convenience accessors for the keys in the minimal reference schema.
SimpleTable(Schema const &schema, boost::shared_ptr< IdFactory > const &idFactory)
boost::shared_ptr< IdFactory > _idFactory
std::int64_t RecordId
Type used for unique IDs for records.
static boost::shared_ptr< SimpleTable > make(Schema const &schema)
Construct a new table.
Table class that must contain a unique ID field and a celestial coordinate field. ...
A class representing an Angle.
static bool checkSchema(Schema const &other)
Return true if the given schema is a valid SimpleTable schema.
Custom catalog class for record/table subclasses that are guaranteed to have an ID, and should generally be sorted by that ID.
virtual void set(BaseRecord &record, coord::IcrsCoord const &value) const
Set an IcrsCoord in the given record.
std::map< Citizen const *, CitizenInfo > table
SortedCatalogT< Record > Catalog
Angle getRa() const
Convenience accessors for the keys in the minimal reference schema.
virtual boost::shared_ptr< BaseTable > _clone() const =0
Clone implementation with noncovariant return types.
static MinimalSchema & getMinimalSchema()
Key< geom::Angle > getRa() const
Return a constituent Key.
A polymorphic functor base class for generating record IDs for a table.
virtual boost::shared_ptr< BaseRecord > _makeRecord()=0
Default-construct an associated record (protected implementation).
static boost::shared_ptr< SimpleTable > make(Schema const &schema, boost::shared_ptr< IdFactory > const &idFactory)
Construct a new table.
RecordId getId() const
Convenience accessors for the keys in the minimal reference schema.
boost::shared_ptr< BaseTable const > getTable() const
Return the table this record is associated with.
Base class for all records.
static CoordKey getCoordKey()
Key for the celestial coordinates.
boost::shared_ptr< BaseRecord > copyRecord(BaseRecord const &input)
Deep-copy a record, requiring that it have the same schema as this table.
SortedCatalogT< SimpleRecord > Catalog
SortedCatalogT< SimpleRecord const > ConstCatalog
#define CONST_PTR(...)
A shared pointer to a const object.
void setRa(Angle ra)
Convenience accessors for the keys in the minimal reference schema.
Record class that must contain a unique ID field and a celestial coordinate field.
This is the base class for spherical coordinates.
A class to handle Icrs coordinates (inherits from Coord)
Base class for all tables.
A FunctorKey used to get or set celestial coordinates from a pair of Angle keys.