CMS 3D CMS Logo

GlobalFlagXML Class Reference

XML format flag. More...

#include <CalibTracker/SiStripRunSummary/interface/GlobalFlagXML.h>

Inheritance diagram for GlobalFlagXML:

FlagXML Flag Clonable Identifiable

List of all members.

Public Member Functions

 GlobalFlagXML (const GlobalFlagTxt *poGLOBAL_FLAGTXT)
 Construct XML format flag from Txt formatted one.
 GlobalFlagXML ()

Protected Member Functions

virtual Clonableclone () const
 Clone method is used in copying Tree.
virtual ClonablecloneTxt () const
 Convert XML format flag to Txt.
virtual ClassIDBase::ID getID () const
 Used in (de)serialization process to get class ID.
virtual int isChildValid (const FlagXML *poCHILD_CANDIDATE) const
 Override current method in case flag may have any children.

Private Member Functions

template<class Archive>
void serialize (Archive &roArchive, const unsigned int &rnVERSION)

Friends

class boost::serialization::access
 --[ BEGIN ]-- Serialization section: XML format


Detailed Description

XML format flag.

Tasks: 1. Define cloning 2. Implement identification (get class ID) 3. Specify allowed children 4. Serialization part: a) (de)serialization through base class b) register class in boost/serialization 5. flag output in ostream (print, display).

Definition at line 36 of file GlobalFlagXML.h.


Constructor & Destructor Documentation

GlobalFlagXML::GlobalFlagXML (  )  [inline]

Definition at line 38 of file GlobalFlagXML.h.

Referenced by clone().

00038 {}

GlobalFlagXML::GlobalFlagXML ( const GlobalFlagTxt poGLOBAL_FLAGTXT  ) 

Construct XML format flag from Txt formatted one.

Parameters:
poGLOBAL_FLAGTXT Txt format flag to be used as source

Definition at line 20 of file GlobalFlagXML.cc.

00021   : FlagXML( *( dynamic_cast<const FlagTxt *>( poGLOBAL_FLAGTXT) ) ) {}


Member Function Documentation

virtual Clonable* GlobalFlagXML::clone ( void   )  const [inline, protected, virtual]

Clone method is used in copying Tree.

Should be implemented by each flag individually. Flag should be created on a heap store.

Returns:
Pointer to newly created flag.

Implements Clonable.

Definition at line 57 of file GlobalFlagXML.h.

References GlobalFlagXML().

00057                                            {
00058       return new GlobalFlagXML( *this);
00059     }

Clonable * GlobalFlagXML::cloneTxt (  )  const [protected, virtual]

Convert XML format flag to Txt.

Txt flag should be created on a heap store and constructed out of XML formatted one.

Returns:
Pointer to newly created flag.

Reimplemented from Clonable.

Definition at line 24 of file GlobalFlagXML.cc.

00024                                         {
00025   return new GlobalFlagTxt( this);
00026 }

ClassIDBase::ID GlobalFlagXML::getID (  )  const [protected, virtual]

Used in (de)serialization process to get class ID.

Returns:
ID of current class.

Implements Identifiable.

Definition at line 28 of file GlobalFlagXML.cc.

References ClassID< T >::get().

00028                                          {
00029   return ClassID<GlobalFlagXML>::get();
00030 }

int GlobalFlagXML::isChildValid ( const FlagXML poCHILD_CANDIDATE  )  const [protected, virtual]

Override current method in case flag may have any children.

Parameters:
poCHILD_CANDIDATE Pointer to flag to be checked if it is allowed.
Returns:
Number of children allowed (refer to base class for details)

Reimplemented from FlagXML.

Definition at line 32 of file GlobalFlagXML.cc.

00032                                                                        {
00033   return dynamic_cast<const DAQFlagXML     *>( poCHILD_CANDIDATE) ||
00034          dynamic_cast<const DCSFlagXML     *>( poCHILD_CANDIDATE) ||
00035          dynamic_cast<const DQMFlagXML     *>( poCHILD_CANDIDATE) ||
00036          dynamic_cast<const TriggerFlagXML *>( poCHILD_CANDIDATE) ?
00037          1 :
00038          0;
00039 }

template<class Archive>
void GlobalFlagXML::serialize ( Archive &  roArchive,
const unsigned int rnVERSION 
) [inline, private]

Definition at line 100 of file GlobalFlagXML.h.

00100                                                                          {
00101         roArchive & BOOST_SERIALIZATION_BASE_OBJECT_NVP( FlagXML);
00102       }


Friends And Related Function Documentation

friend class boost::serialization::access [friend]

--[ BEGIN ]-- Serialization section: XML format

Reimplemented from FlagXML.

Definition at line 97 of file GlobalFlagXML.h.


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:21:39 2009 for CMSSW by  doxygen 1.5.4