BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
rdbModel::Supersede Class Reference

#include <Supersede.h>

Public Member Functions

 Supersede (Table *table, Assertion *onlyIf=0)
 ~Supersede ()
const std::vector< Set * > & getSetOld () const
const std::vector< Set * > & getSetNew () const
void addSet (Set *s)
const TablegetTable () const
Visitor::VisitorState accept (Visitor *v)
AssertiongetOnlyIf ()
const std::vector< std::string > & getAsk () const
const std::vector< std::string > & getOldDefaulted () const
const std::vector< std::string > & getFromOld () const
const std::vector< FieldVal > & getFixed () const
const std::vector< std::string > & getFixedInterp () const
const std::vector< std::string > & getForced () const
void setOnlyIf (Assertion *onlyIf)
void normalize ()
 Supersede (Table *table, Assertion *onlyIf=0)
 ~Supersede ()
const std::vector< Set * > & getSetOld () const
const std::vector< Set * > & getSetNew () const
void addSet (Set *s)
const TablegetTable () const
Visitor::VisitorState accept (Visitor *v)
AssertiongetOnlyIf ()
const std::vector< std::string > & getAsk () const
const std::vector< std::string > & getOldDefaulted () const
const std::vector< std::string > & getFromOld () const
const std::vector< FieldVal > & getFixed () const
const std::vector< std::string > & getFixedInterp () const
const std::vector< std::string > & getForced () const
void setOnlyIf (Assertion *onlyIf)
void normalize ()
 Supersede (Table *table, Assertion *onlyIf=0)
 ~Supersede ()
const std::vector< Set * > & getSetOld () const
const std::vector< Set * > & getSetNew () const
void addSet (Set *s)
const TablegetTable () const
Visitor::VisitorState accept (Visitor *v)
AssertiongetOnlyIf ()
const std::vector< std::string > & getAsk () const
const std::vector< std::string > & getOldDefaulted () const
const std::vector< std::string > & getFromOld () const
const std::vector< FieldVal > & getFixed () const
const std::vector< std::string > & getFixedInterp () const
const std::vector< std::string > & getForced () const
void setOnlyIf (Assertion *onlyIf)
void normalize ()

Detailed Description

Supersede operation needs to o change one or more column values in row being superseded o set values in new, superseding row. Default is to assume values come from the old row; only specify those that don't

Definition at line 22 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

Constructor & Destructor Documentation

◆ Supersede() [1/3]

rdbModel::Supersede::Supersede ( Table * table,
Assertion * onlyIf = 0 )

Definition at line 10 of file Supersede.cxx.

11 : m_myTable( table ), m_onlyIf( onlyIf ), m_normalized( false ) {
12 m_setOld.clear();
13 m_setNew.clear();
14 m_oldDefaults.clear();
15 m_oldForced.clear();
16 m_ask.clear();
17 m_fixed.clear();
18 }

◆ ~Supersede() [1/3]

rdbModel::Supersede::~Supersede ( )

Definition at line 70 of file Supersede.cxx.

70 {
71 while ( m_setOld.size() )
72 {
73 Set* s = m_setOld.back();
74 m_setOld.pop_back();
75 delete s;
76 }
77 while ( m_setNew.size() )
78 {
79 Set* s = m_setNew.back();
80 m_setNew.pop_back();
81 delete s;
82 }
83 // delete m_onlyIf; probably already handled by ~Table
84 }
XmlRpcServer s

◆ Supersede() [2/3]

rdbModel::Supersede::Supersede ( Table * table,
Assertion * onlyIf = 0 )

◆ ~Supersede() [2/3]

rdbModel::Supersede::~Supersede ( )

◆ Supersede() [3/3]

rdbModel::Supersede::Supersede ( Table * table,
Assertion * onlyIf = 0 )

◆ ~Supersede() [3/3]

rdbModel::Supersede::~Supersede ( )

Member Function Documentation

◆ accept() [1/3]

Visitor::VisitorState rdbModel::Supersede::accept ( Visitor * v)

Definition at line 87 of file Supersede.cxx.

87 {
88 Visitor::VisitorState state = v->visitSupersede( this );
89 if ( state == Visitor::VBRANCHDONE ) return Visitor::VCONTINUE;
90 return state;
91 }
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
Definition KarLud.h:35

◆ accept() [2/3]

Visitor::VisitorState rdbModel::Supersede::accept ( Visitor * v)

◆ accept() [3/3]

Visitor::VisitorState rdbModel::Supersede::accept ( Visitor * v)

◆ addSet() [1/3]

void rdbModel::Supersede::addSet ( Set * s)

Definition at line 20 of file Supersede.cxx.

20 {
21 FIELDTYPE vtype = s->getDestType();
22 switch ( vtype )
23 {
24 case FIELDTYPEold:
25 case FIELDTYPEoldDef: // this shouldn't occur
26 m_setOld.push_back( s );
27 break;
28 case FIELDTYPEtoBe:
29 case FIELDTYPEtoBeDef: // nor this
30 m_setNew.push_back( s );
31 break;
32 default: throw RdbException( "Bad value type for <set> destination" );
33 }
34 return;
35 }

◆ addSet() [2/3]

void rdbModel::Supersede::addSet ( Set * s)

◆ addSet() [3/3]

void rdbModel::Supersede::addSet ( Set * s)

◆ getAsk() [1/3]

const std::vector< std::string > & rdbModel::Supersede::getAsk ( ) const
inline

Definition at line 39 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

39{ return m_ask; }

◆ getAsk() [2/3]

const std::vector< std::string > & rdbModel::Supersede::getAsk ( ) const
inline

Definition at line 39 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

39{ return m_ask; }

◆ getAsk() [3/3]

const std::vector< std::string > & rdbModel::Supersede::getAsk ( ) const
inline

Definition at line 39 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

39{ return m_ask; }

◆ getFixed() [1/3]

const std::vector< FieldVal > & rdbModel::Supersede::getFixed ( ) const
inline

Definition at line 45 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

45{ return m_fixed; }

◆ getFixed() [2/3]

const std::vector< FieldVal > & rdbModel::Supersede::getFixed ( ) const
inline

Definition at line 45 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

45{ return m_fixed; }

◆ getFixed() [3/3]

const std::vector< FieldVal > & rdbModel::Supersede::getFixed ( ) const
inline

Definition at line 45 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

45{ return m_fixed; }

◆ getFixedInterp() [1/3]

const std::vector< std::string > & rdbModel::Supersede::getFixedInterp ( ) const
inline

Definition at line 46 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

46{ return m_fixedInterp; }

◆ getFixedInterp() [2/3]

const std::vector< std::string > & rdbModel::Supersede::getFixedInterp ( ) const
inline

Definition at line 46 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

46{ return m_fixedInterp; }

◆ getFixedInterp() [3/3]

const std::vector< std::string > & rdbModel::Supersede::getFixedInterp ( ) const
inline

Definition at line 46 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

46{ return m_fixedInterp; }

◆ getForced() [1/3]

const std::vector< std::string > & rdbModel::Supersede::getForced ( ) const
inline

Definition at line 48 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

48{ return m_oldForced; }

◆ getForced() [2/3]

const std::vector< std::string > & rdbModel::Supersede::getForced ( ) const
inline

Definition at line 48 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

48{ return m_oldForced; }

◆ getForced() [3/3]

const std::vector< std::string > & rdbModel::Supersede::getForced ( ) const
inline

Definition at line 48 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

48{ return m_oldForced; }

◆ getFromOld() [1/3]

const std::vector< std::string > & rdbModel::Supersede::getFromOld ( ) const
inline

Definition at line 43 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

43{ return m_fromOld; }

◆ getFromOld() [2/3]

const std::vector< std::string > & rdbModel::Supersede::getFromOld ( ) const
inline

Definition at line 43 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

43{ return m_fromOld; }

◆ getFromOld() [3/3]

const std::vector< std::string > & rdbModel::Supersede::getFromOld ( ) const
inline

Definition at line 43 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

43{ return m_fromOld; }

◆ getOldDefaulted() [1/3]

const std::vector< std::string > & rdbModel::Supersede::getOldDefaulted ( ) const
inline

Definition at line 41 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

41{ return m_oldDefaults; }

◆ getOldDefaulted() [2/3]

const std::vector< std::string > & rdbModel::Supersede::getOldDefaulted ( ) const
inline

Definition at line 41 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

41{ return m_oldDefaults; }

◆ getOldDefaulted() [3/3]

const std::vector< std::string > & rdbModel::Supersede::getOldDefaulted ( ) const
inline

Definition at line 41 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

41{ return m_oldDefaults; }

◆ getOnlyIf() [1/3]

Assertion * rdbModel::Supersede::getOnlyIf ( )
inline

Definition at line 37 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

37{ return m_onlyIf; }

◆ getOnlyIf() [2/3]

Assertion * rdbModel::Supersede::getOnlyIf ( )
inline

Definition at line 37 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

37{ return m_onlyIf; }

◆ getOnlyIf() [3/3]

Assertion * rdbModel::Supersede::getOnlyIf ( )
inline

Definition at line 37 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

37{ return m_onlyIf; }

◆ getSetNew() [1/3]

const std::vector< Set * > & rdbModel::Supersede::getSetNew ( ) const
inline

Definition at line 29 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

29{ return m_setOld; }

◆ getSetNew() [2/3]

const std::vector< Set * > & rdbModel::Supersede::getSetNew ( ) const
inline

Definition at line 29 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

29{ return m_setOld; }

◆ getSetNew() [3/3]

const std::vector< Set * > & rdbModel::Supersede::getSetNew ( ) const
inline

Definition at line 29 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

29{ return m_setOld; }

◆ getSetOld() [1/3]

const std::vector< Set * > & rdbModel::Supersede::getSetOld ( ) const
inline

Definition at line 28 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

28{ return m_setOld; }

◆ getSetOld() [2/3]

const std::vector< Set * > & rdbModel::Supersede::getSetOld ( ) const
inline

Definition at line 28 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

28{ return m_setOld; }

◆ getSetOld() [3/3]

const std::vector< Set * > & rdbModel::Supersede::getSetOld ( ) const
inline

Definition at line 28 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

28{ return m_setOld; }

◆ getTable() [1/3]

const Table * rdbModel::Supersede::getTable ( ) const
inline

Definition at line 33 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

33{ return m_myTable; }

◆ getTable() [2/3]

const Table * rdbModel::Supersede::getTable ( ) const
inline

Definition at line 33 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

33{ return m_myTable; }

◆ getTable() [3/3]

const Table * rdbModel::Supersede::getTable ( ) const
inline

Definition at line 33 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

33{ return m_myTable; }

◆ normalize() [1/3]

void rdbModel::Supersede::normalize ( )

Initialize m_oldDefaults, m_oldForced, m_ask and m_fixed if it hasn't been done already

Definition at line 37 of file Supersede.cxx.

37 {
38 if ( m_normalized ) return;
39 // unsigned nOld = m_setOld.size();
40 unsigned nNew = m_setNew.size();
41 // For each object in m_setNew, store information in one of the
42 // vectors of column names or in m_fixed for easy access later
43 for ( unsigned iNew = 0; iNew < nNew; iNew++ )
44 {
45 // FIELDTYPE srcType = m_setOld[iOld]->getSrcType();
46 // switch (srcType) {
47 switch ( m_setNew[iNew]->getSrcType() )
48 {
49 case FIELDTYPEold: m_oldForced.push_back( m_setNew[iNew]->getDestColName() ); break;
50 case FIELDTYPEoldDef: m_oldDefaults.push_back( m_setNew[iNew]->getDestColName() ); break;
51 case FIELDTYPEask: m_ask.push_back( m_setNew[iNew]->getDestColName() ); break;
52 case FIELDTYPElit:
53 m_fixed.push_back(
54 FieldVal( m_setNew[iNew]->getDestColName(), m_setNew[iNew]->getSrcValue() ) );
55 m_fixedInterp.push_back( m_setNew[iNew]->getInterp() );
56 break;
57 default: throw RdbException( "Supersede::normalize Unrecognized <set>" );
58 }
59 }
60
61 m_fromOld.reserve( m_oldDefaults.size() + m_oldForced.size() );
62 m_fromOld.clear();
63 for ( unsigned i = 0; i < m_oldDefaults.size(); i++ )
64 { m_fromOld.push_back( m_oldDefaults[i] ); }
65 for ( unsigned i = 0; i < m_oldForced.size(); i++ )
66 { m_fromOld.push_back( m_oldForced[i] ); }
67 m_normalized = true;
68 }

◆ normalize() [2/3]

void rdbModel::Supersede::normalize ( )

Initialize m_oldDefaults, m_oldForced, m_ask and m_fixed if it hasn't been done already

◆ normalize() [3/3]

void rdbModel::Supersede::normalize ( )

Initialize m_oldDefaults, m_oldForced, m_ask and m_fixed if it hasn't been done already

◆ setOnlyIf() [1/3]

void rdbModel::Supersede::setOnlyIf ( Assertion * onlyIf)
inline

Definition at line 52 of file Calibration/rdbModel/include/rdbModel/Tables/Supersede.h.

52{ m_onlyIf = onlyIf; }

◆ setOnlyIf() [2/3]

void rdbModel::Supersede::setOnlyIf ( Assertion * onlyIf)
inline

Definition at line 52 of file InstallArea/x86_64-el9-gcc13-dbg/include/rdbModel/Tables/Supersede.h.

52{ m_onlyIf = onlyIf; }

◆ setOnlyIf() [3/3]

void rdbModel::Supersede::setOnlyIf ( Assertion * onlyIf)
inline

Definition at line 52 of file InstallArea/x86_64-el9-gcc13-opt/include/rdbModel/Tables/Supersede.h.

52{ m_onlyIf = onlyIf; }

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