lsst.daf.persistence  14.0-11-g0362164
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
lsst::daf::persistence::XmlStorage Class Reference

Class for XML file storage. More...

#include <XmlStorage.h>

Inheritance diagram for lsst::daf::persistence::XmlStorage:
lsst::daf::persistence::FormatterStorage lsst::daf::base::Citizen

Public Types

typedef std::shared_ptr< XmlStoragePtr
 
typedef std::vector< PtrList
 
typedef unsigned long memId
 
typedef memId(* memNewCallback) (const memId cid)
 
typedef memId(* memCallback) (const Citizen *ptr)
 

Public Member Functions

 XmlStorage (void)
 Constructor. More...
 
virtual ~XmlStorage (void)
 Destructor. More...
 
virtual void setPolicy (lsst::pex::policy::Policy::Ptr policy)
 Allow a Policy to be used to configure the FormatterStorage. More...
 
virtual void setPersistLocation (LogicalLocation const &location)
 Set the destination to persist to. More...
 
virtual void setRetrieveLocation (LogicalLocation const &location)
 Set the source to retrieve from. More...
 
virtual void startTransaction (void)
 Start a transaction. More...
 
virtual void endTransaction (void)
 End a transaction. More...
 
virtual boost::archive::xml_oarchive & getOArchive (void)
 Get a boost::serialization XML archive suitable for output. More...
 
virtual boost::archive::xml_iarchive & getIArchive (void)
 Get a boost::serialization XML archive suitable for input. More...
 
std::string repr () const
 
void markPersistent (void)
 
memId getId () const
 

Static Public Member Functions

static Ptr createInstance (std::string const &name, LogicalLocation const &location, bool persist, lsst::pex::policy::Policy::Ptr policy)
 Create and configure a FormatterStorage subclass instance. More...
 
static bool hasBeenCorrupted ()
 
static memId getNextMemId ()
 
static int init ()
 
static int census (int, memId startingMemId=0)
 
static void census (std::ostream &stream, memId startingMemId=0)
 
static const std::vector< const Citizen *> * census ()
 
static int census (int, memId startingMemId=0)
 
static void census (std::ostream &stream, memId startingMemId=0)
 
static const std::vector< const Citizen *> * census ()
 
static memId setNewCallbackId (memId id)
 
static memId setNewCallbackId (memId id)
 
static memId setDeleteCallbackId (memId id)
 
static memId setDeleteCallbackId (memId id)
 
static memNewCallback setNewCallback (memNewCallback func)
 
static memCallback setDeleteCallback (memCallback func)
 
static memCallback setCorruptionCallback (memCallback func)
 

Public Attributes

 magicSentinel
 

Protected Member Functions

void verifyPathName (std::string const &pathName)
 Ensure that all directories along a path exist, creating them if necessary. More...
 

Detailed Description

Class for XML file storage.

Provides Boost XML archives for Formatter subclasses to use.

Definition at line 58 of file XmlStorage.h.

Member Typedef Documentation

◆ List

Definition at line 63 of file FormatterStorage.h.

◆ Ptr

Definition at line 60 of file XmlStorage.h.

Constructor & Destructor Documentation

◆ XmlStorage()

lsst::daf::persistence::XmlStorage::XmlStorage ( void  )

Constructor.

Definition at line 54 of file XmlStorage.cc.

◆ ~XmlStorage()

lsst::daf::persistence::XmlStorage::~XmlStorage ( void  )
virtual

Destructor.

Clean up streams.

Definition at line 62 of file XmlStorage.cc.

Member Function Documentation

◆ createInstance()

FormatterStorage::Ptr lsst::daf::persistence::FormatterStorage::createInstance ( std::string const &  name,
LogicalLocation const &  location,
bool  persist,
lsst::pex::policy::Policy::Ptr  policy 
)
staticinherited

Create and configure a FormatterStorage subclass instance.

Parameters
[in]nameName of subclass
[in]locationLocation to persist to or retrieve from
[in]persistTrue if persisting, false if retrieving
[in]policyPolicy used to configure the FormatterStorage
Returns
Shared pointer to FormatterStorage subclass instance

Definition at line 75 of file FormatterStorage.cc.

◆ endTransaction()

void lsst::daf::persistence::XmlStorage::endTransaction ( void  )
virtual

End a transaction.

No transaction support for now, but close streams.

Implements lsst::daf::persistence::FormatterStorage.

Definition at line 97 of file XmlStorage.cc.

◆ getIArchive()

boost::archive::xml_iarchive & lsst::daf::persistence::XmlStorage::getIArchive ( void  )
virtual

Get a boost::serialization XML archive suitable for input.

Returns
Reference to an XML input archive

Definition at line 114 of file XmlStorage.cc.

◆ getOArchive()

boost::archive::xml_oarchive & lsst::daf::persistence::XmlStorage::getOArchive ( void  )
virtual

Get a boost::serialization XML archive suitable for output.

Returns
Reference to an XML output archive

Definition at line 107 of file XmlStorage.cc.

◆ setPersistLocation()

void lsst::daf::persistence::XmlStorage::setPersistLocation ( LogicalLocation const &  location)
virtual

Set the destination to persist to.

Parameters
[in]locationPathname to Boost XML file

Implements lsst::daf::persistence::FormatterStorage.

Definition at line 74 of file XmlStorage.cc.

◆ setPolicy()

void lsst::daf::persistence::XmlStorage::setPolicy ( lsst::pex::policy::Policy::Ptr  policy)
virtual

Allow a Policy to be used to configure the FormatterStorage.

Parameters
[in]policy

Implements lsst::daf::persistence::FormatterStorage.

Definition at line 68 of file XmlStorage.cc.

◆ setRetrieveLocation()

void lsst::daf::persistence::XmlStorage::setRetrieveLocation ( LogicalLocation const &  location)
virtual

Set the source to retrieve from.

Parameters
[in]locationPathname to Boost XML file

Implements lsst::daf::persistence::FormatterStorage.

Definition at line 83 of file XmlStorage.cc.

◆ startTransaction()

void lsst::daf::persistence::XmlStorage::startTransaction ( void  )
virtual

Start a transaction.

No transaction support for now.

Implements lsst::daf::persistence::FormatterStorage.

Definition at line 91 of file XmlStorage.cc.

◆ verifyPathName()

void lsst::daf::persistence::FormatterStorage::verifyPathName ( std::string const &  name)
protectedinherited

Ensure that all directories along a path exist, creating them if necessary.

Parameters
[in]namePathname to file to be created

Definition at line 93 of file FormatterStorage.cc.


The documentation for this class was generated from the following files: