LSSTApplications  19.0.0-14-gb0260a2+d60062ef16,20.0.0+1540ce6389,20.0.0+7c6b12c2f9,20.0.0+ae956f52c5,20.0.0+be870186d9,20.0.0+e2e26847c2,20.0.0-1-g10df615+7683e4f082,20.0.0-1-g253301a+7c6b12c2f9,20.0.0-1-g2b7511a+46a6078777,20.0.0-1-g3dda6ea+606b36f8c0,20.0.0-1-g4d801e7+901ee84527,20.0.0-1-g5b95a8c+a5fa15ec54,20.0.0-1-gb058bd0+46a6078777,20.0.0-1-gb88604f+acecce4127,20.0.0-1-gc96f8cb+61a4a056b1,20.0.0-1-gedffbd8+4f0e391d5e,20.0.0-10-g0891cd99+aadc987f3e,20.0.0-10-g9a20bd332+576ca7b471,20.0.0-17-gcdbda88+ed0d4927ab,20.0.0-2-g4dae9ad+61a4a056b1,20.0.0-2-g61b8584+85c46248f3,20.0.0-2-gb780d76+f45b7d88f4,20.0.0-2-gf072044+7c6b12c2f9,20.0.0-21-g9bbb7f7+61a4a056b1,20.0.0-22-gc512666+9eba1c4719,20.0.0-23-g8900aa8+68630f7098,20.0.0-3-g1653f94+85c46248f3,20.0.0-3-g4cc78c6+63636aeed8,20.0.0-3-g750bffe+e05f822de9,20.0.0-3-gbd60e8c+ff10c6d78d,20.0.0-32-g15a0e07c+ff1c9f120b,20.0.0-4-g97dc21a+68630f7098,20.0.0-4-gfea843c+f45b7d88f4,20.0.0-5-g357b56b+f45b7d88f4,20.0.0-6-g9a5b7a1+2c4171520d,20.0.0-61-g4de25fb+e4dd172200,20.0.0-7-gcda7bf1+85e953d7e4,w.2020.43
LSSTDataManagementBasePackage
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
lsst.pex::policy::PolicySource Class Referenceabstract

an abstract class representing a source of serialized Policy parameter data. More...

#include <PolicySource.h>

Inheritance diagram for lsst.pex::policy::PolicySource:
lsst.pex::policy::PolicyFile lsst.pex::policy::PolicyString lsst.pex::policy::DefaultPolicyFile lsst.pex::policy::UrnPolicyFile

Public Member Functions

 PolicySource (SupportedFormats::Ptr fmts=defaultFormats)
 create a Policy file that points a file with given path. More...
 
virtual ~PolicySource ()
 destroy the source More...
 
virtual const std::stringgetFormatName ()=0
 return the name of the format that the data is stored in. More...
 
virtual void load (Policy &policy) const =0
 load the data from this Policy source into a Policy object More...
 
virtual void load (Policy &policy)=0
 

Static Public Attributes

static SupportedFormats::Ptr defaultFormats
 a default set of formats More...
 

Protected Attributes

SupportedFormats::Ptr _formats
 

Detailed Description

an abstract class representing a source of serialized Policy parameter data.

This might be a file or a stream; sub-classes handle the different possibilities. This class can determine which format the data is in (which may involve reading the first few characters) and load it into a Policy.

Definition at line 52 of file PolicySource.h.

Constructor & Destructor Documentation

◆ PolicySource()

lsst.pex::policy::PolicySource::PolicySource ( SupportedFormats::Ptr  fmts = defaultFormats)
inline

create a Policy file that points a file with given path.

Parameters
fmtsthe list of formats to support

Definition at line 58 of file PolicySource.h.

58  : _formats(fmts) {
60  }

◆ ~PolicySource()

lsst.pex::policy::PolicySource::~PolicySource ( )
virtual

destroy the source

Definition at line 35 of file PolicySource.cc.

35 {}

Member Function Documentation

◆ getFormatName()

virtual const std::string& lsst.pex::policy::PolicySource::getFormatName ( )
pure virtual

return the name of the format that the data is stored in.

This may cause the first few records of the source to be read.

Exceptions
IOErrorif an error occurs while reading the first few characters of the source stream.

Implemented in lsst.pex::policy::PolicyFile, and lsst.pex::policy::PolicyString.

◆ load() [1/2]

virtual void lsst.pex::policy::PolicySource::load ( Policy policy) const
pure virtual

load the data from this Policy source into a Policy object

Parameters
policythe policy object to load the data into
Exceptions
ParserExceptionif an error occurs while parsing the data
IOErrorif an I/O error occurs while reading from the source stream.

Implemented in lsst.pex::policy::PolicyFile, lsst.pex::policy::DefaultPolicyFile, and lsst.pex::policy::PolicyString.

◆ load() [2/2]

virtual void lsst.pex::policy::PolicySource::load ( Policy policy)
pure virtual

Member Data Documentation

◆ _formats

SupportedFormats::Ptr lsst.pex::policy::PolicySource::_formats
protected

Definition at line 135 of file PolicySource.h.

◆ defaultFormats

SupportedFormats::Ptr lsst.pex::policy::PolicySource::defaultFormats
static

a default set of formats

Definition at line 130 of file PolicySource.h.


The documentation for this class was generated from the following files:
lsst.pex::policy::PolicySource::_formats
SupportedFormats::Ptr _formats
Definition: PolicySource.h:135
lsst.pex::policy::SupportedFormats::initDefaultFormats
static void initDefaultFormats(SupportedFormats &sf)
initialize a given SupportFormats instance with the formats known by default.
Definition: SupportedFormats.cc:40
lsst.pex::policy::PolicySource::defaultFormats
static SupportedFormats::Ptr defaultFormats
a default set of formats
Definition: PolicySource.h:130