CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Friends
LMFColor Class Reference

#include <LMFColor.h>

Inheritance diagram for LMFColor:
LMFUnique IUniqueDBObject IDBObject

Public Member Functions

int getColor () const
 
int getColorIndex () const
 
std::string getLongName () const
 
std::string getShortName () const
 
bool isValid ()
 
 LMFColor ()
 
 LMFColor (oracle::occi::Environment *env, oracle::occi::Connection *conn)
 
 LMFColor (EcalDBConnection *c)
 
 LMFColor (EcalDBConnection *c, std::string col)
 
bool operator!= (const LMFColor &m) const
 
bool operator== (const LMFColor &m) const
 
LMFColorsetColor (int index)
 
LMFColorsetColor (const std::string &s="blue")
 
LMFColorsetName (const std::string &s="blue")
 
 ~LMFColor ()
 
- Public Member Functions inherited from LMFUnique
void attach (std::string name, LMFUnique *u)
 
void debug ()
 
virtual void dump () const
 
virtual void dump (int n) const
 
virtual bool exists ()
 
virtual boost::ptr_list
< LMFUnique
fetchAll () const throw (std::runtime_error)
 
int fetchID () throw (std::runtime_error)
 
std::string getClassName ()
 
std::string getClassName () const
 
int getID () const
 
int getInt (std::string fieldname) const
 
std::string getString (std::string fieldname) const
 
virtual bool isValid () const
 
 LMFUnique ()
 
 LMFUnique (oracle::occi::Environment *env, oracle::occi::Connection *conn)
 
 LMFUnique (EcalDBConnection *c)
 
void nodebug ()
 
virtual bool operator< (const LMFUnique &r)
 
virtual bool operator<= (const LMFUnique &r)
 
std::string sequencePostfix (Tm t)
 
void setByID (int id) throw (std::runtime_error)
 
LMFUniquesetInt (std::string key, int value)
 
LMFUniquesetString (std::string key, std::string value)
 
void startProfiling ()
 
void stopProfiling ()
 
virtual ~LMFUnique ()
 
- Public Member Functions inherited from IDBObject
oracle::occi::Connection * getConn () const
 
oracle::occi::Environment * getEnv () const
 
void setConnection (oracle::occi::Environment *env, oracle::occi::Connection *conn)
 
virtual ~IDBObject ()
 

Private Member Functions

LMFUniquecreateObject () const
 
std::string fetchAllSql (Statement *stmt) const
 
std::string fetchIdSql (Statement *stmt)
 
void getParameters (ResultSet *rset)
 
std::string setByIDSql (Statement *stmt, int id)
 

Friends

class EcalCondDBInterface
 

Additional Inherited Members

- Public Types inherited from LMFUnique
typedef oracle::occi::ResultSet ResultSet
 
typedef oracle::occi::Statement Statement
 
- Static Public Attributes inherited from IDBObject
static int const ECALDB_NROWS =1024
 
- Protected Member Functions inherited from LMFUnique
virtual void setClassName (std::string s)
 
virtual int writeDB () throw (std::runtime_error)
 
virtual int writeForeignKeys () throw (std::runtime_error)
 
- Protected Member Functions inherited from IDBObject
void checkConnection () const throw (std::runtime_error)
 
- Protected Attributes inherited from LMFUnique
bool _profiling
 
std::string m_className
 
char m_debug
 
std::map< std::string,
LMFUnique * > 
m_foreignKeys
 
std::map< std::string, int > m_intFields
 
std::map< std::string,
std::string > 
m_stringFields
 
- Protected Attributes inherited from IUniqueDBObject
int m_ID
 
- Protected Attributes inherited from IDBObject
oracle::occi::Connection * m_conn
 
oracle::occi::Environment * m_env
 

Detailed Description

Definition at line 12 of file LMFColor.h.

Constructor & Destructor Documentation

LMFColor::LMFColor ( )

Definition at line 9 of file LMFColor.cc.

Referenced by createObject().

10 {
11  m_ID = 0;
12  m_className = "LMFColor";
13  m_stringFields["sname"] = "none";
14  m_stringFields["lname"] = "none";
15  m_intFields["color"] = -1;
16 }
std::string m_className
Definition: LMFUnique.h:99
std::map< std::string, std::string > m_stringFields
Definition: LMFUnique.h:102
std::map< std::string, int > m_intFields
Definition: LMFUnique.h:104
LMFColor::LMFColor ( oracle::occi::Environment *  env,
oracle::occi::Connection *  conn 
)

Definition at line 18 of file LMFColor.cc.

References LMFUnique::m_className, IUniqueDBObject::m_ID, LMFUnique::m_intFields, and LMFUnique::m_stringFields.

19  : LMFUnique(env, conn)
20 {
21  m_ID = 0;
22  m_className = "LMFColor";
23  m_stringFields["sname"] = "none";
24  m_stringFields["lname"] = "none";
25  m_intFields["color"] = -1;
26 }
std::string m_className
Definition: LMFUnique.h:99
LMFUnique()
Definition: LMFUnique.h:23
std::map< std::string, std::string > m_stringFields
Definition: LMFUnique.h:102
tuple conn
Definition: results_mgr.py:53
std::map< std::string, int > m_intFields
Definition: LMFUnique.h:104
LMFColor::LMFColor ( EcalDBConnection c)

Definition at line 28 of file LMFColor.cc.

References LMFUnique::m_className, IUniqueDBObject::m_ID, LMFUnique::m_intFields, and LMFUnique::m_stringFields.

28  : LMFUnique(c)
29 {
30  m_ID = 0;
31  m_className = "LMFColor";
32  m_stringFields["sname"] = "none";
33  m_stringFields["lname"] = "none";
34  m_intFields["color"] = -1;
35 }
std::string m_className
Definition: LMFUnique.h:99
LMFUnique()
Definition: LMFUnique.h:23
std::map< std::string, std::string > m_stringFields
Definition: LMFUnique.h:102
std::map< std::string, int > m_intFields
Definition: LMFUnique.h:104
LMFColor::LMFColor ( EcalDBConnection c,
std::string  col 
)

Definition at line 37 of file LMFColor.cc.

References LMFUnique::m_className, IUniqueDBObject::m_ID, LMFUnique::m_intFields, LMFUnique::m_stringFields, and setName().

37  : LMFUnique(c)
38 {
39  m_ID = 0;
40  m_className = "LMFColor";
41  m_stringFields["sname"] = "none";
42  m_stringFields["lname"] = "none";
43  m_intFields["color"] = -1;
44  setName(color);
45 }
std::string m_className
Definition: LMFUnique.h:99
LMFColor & setName(const std::string &s="blue")
Definition: LMFColor.h:23
LMFUnique()
Definition: LMFUnique.h:23
std::map< std::string, std::string > m_stringFields
Definition: LMFUnique.h:102
std::map< std::string, int > m_intFields
Definition: LMFUnique.h:104
LMFColor::~LMFColor ( )

Definition at line 47 of file LMFColor.cc.

48 {
49 }

Member Function Documentation

LMFUnique * LMFColor::createObject ( ) const
privatevirtual

Reimplemented from LMFUnique.

Definition at line 58 of file LMFColor.cc.

References LMFColor(), IDBObject::m_conn, IDBObject::m_env, n, and IDBObject::setConnection().

58  {
59  LMFColor * n = new LMFColor;
61  return n;
62 }
oracle::occi::Environment * m_env
Definition: IDBObject.h:38
oracle::occi::Connection * m_conn
Definition: IDBObject.h:39
LMFColor()
Definition: LMFColor.cc:9
void setConnection(oracle::occi::Environment *env, oracle::occi::Connection *conn)
Definition: IDBObject.h:23
std::string LMFColor::fetchAllSql ( Statement stmt) const
privatevirtual

Reimplemented from LMFUnique.

Definition at line 51 of file LMFColor.cc.

51  {
52  std::string sql = "SELECT COLOR_ID FROM "
53  "CMS_ECAL_LASER_COND.LMF_COLOR_DEF";
54  stmt->setSQL(sql);
55  return sql;
56 }
std::string LMFColor::fetchIdSql ( Statement stmt)
privatevirtual

Reimplemented from LMFUnique.

Definition at line 64 of file LMFColor.cc.

References getColorIndex(), LMFUnique::getInt(), getShortName(), and LMFUnique::getString().

64  {
65  // the query depends on the object status
66  std::string sql;
67  if ((getInt("color") >= 0) && (getString("sname") != "none")) {
68  sql = "SELECT COLOR_ID FROM CMS_ECAL_LASER_COND.LMF_COLOR_DEF "
69  "WHERE SNAME = :1 AND COLOR_INDEX = :2";
70  stmt->setSQL(sql);
71  stmt->setString(1, getShortName());
72  stmt->setInt(2, getColorIndex());
73  } else if (getInt("color") >= 0) {
74  sql = "SELECT COLOR_ID FROM CMS_ECAL_LASER_COND.LMF_COLOR_DEF "
75  "WHERE COLOR_INDEX = :1";
76  stmt->setSQL(sql);
77  stmt->setInt(1, getColorIndex());
78  } else if (getString("sname") != "") {
79  sql = "SELECT COLOR_ID FROM CMS_ECAL_LASER_COND.LMF_COLOR_DEF "
80  "WHERE SNAME = :1";
81  stmt->setSQL(sql);
82  stmt->setString(1, getShortName());
83  }
84  return sql;
85 }
int getInt(std::string fieldname) const
Definition: LMFUnique.cc:203
std::string getShortName() const
Definition: LMFColor.h:44
int getColorIndex() const
Definition: LMFColor.h:46
std::string getString(std::string fieldname) const
Definition: LMFUnique.cc:194
int LMFColor::getColor ( ) const
inline

Definition at line 47 of file LMFColor.h.

References getColorIndex().

47 { return getColorIndex(); }
int getColorIndex() const
Definition: LMFColor.h:46
int LMFColor::getColorIndex ( ) const
inline

Definition at line 46 of file LMFColor.h.

References LMFUnique::getInt().

Referenced by fetchIdSql(), and getColor().

46 { return getInt("color"); }
int getInt(std::string fieldname) const
Definition: LMFUnique.cc:203
std::string LMFColor::getLongName ( ) const
inline

Definition at line 45 of file LMFColor.h.

References LMFUnique::getString().

Referenced by LMFRunIOV::getColorLongName(), and operator==().

45 { return getString("lname"); }
std::string getString(std::string fieldname) const
Definition: LMFUnique.cc:194
void LMFColor::getParameters ( ResultSet rset)
privatevirtual

Reimplemented from LMFUnique.

Definition at line 95 of file LMFColor.cc.

References LMFUnique::setInt(), and LMFUnique::setString().

95  {
96  setInt("color", rset->getInt(1));
97  setString("sname", rset->getString(2));
98  setString("lname", rset->getString(3));
99 }
LMFUnique & setInt(std::string key, int value)
Definition: LMFUnique.cc:33
LMFUnique & setString(std::string key, std::string value)
Definition: LMFUnique.cc:15
std::string LMFColor::getShortName ( ) const
inline

Definition at line 44 of file LMFColor.h.

References LMFUnique::getString().

Referenced by fetchIdSql(), LMFRunIOV::getColorShortName(), isValid(), and operator==().

44 { return getString("sname"); }
std::string getString(std::string fieldname) const
Definition: LMFUnique.cc:194
bool LMFColor::isValid ( void  )
virtual

Reimplemented from LMFUnique.

Definition at line 101 of file LMFColor.cc.

References trackerHits::c, alignCSCRings::e, LMFUnique::fetchAll(), getShortName(), i, and run_regression::ret.

101  {
102  boost::ptr_list<LMFUnique> listOfValidColors = fetchAll();
103  boost::ptr_list<LMFUnique>::const_iterator i = listOfValidColors.begin();
104  boost::ptr_list<LMFUnique>::const_iterator e = listOfValidColors.end();
105  bool ret = false;
106  while (i != e) {
107  LMFColor *c = (LMFColor*)&(*i);
108  if (c->getShortName() == getShortName()) {
109  ret = true;
110  i = e;
111  }
112  i++;
113  }
114  return ret;
115 }
int i
Definition: DBlmapReader.cc:9
std::string getShortName() const
Definition: LMFColor.h:44
virtual boost::ptr_list< LMFUnique > fetchAll() const
Definition: LMFUnique.cc:64
bool LMFColor::operator!= ( const LMFColor m) const
inline

Definition at line 58 of file LMFColor.h.

References m.

58 { return !(*this == m); }
bool LMFColor::operator== ( const LMFColor m) const
inline

Definition at line 52 of file LMFColor.h.

References getLongName(), and getShortName().

53  {
54  return ( getShortName() == m.getShortName() &&
55  getLongName() == m.getLongName());
56  }
std::string getLongName() const
Definition: LMFColor.h:45
std::string getShortName() const
Definition: LMFColor.h:44
std::string LMFColor::setByIDSql ( Statement stmt,
int  id 
)
privatevirtual

Reimplemented from LMFUnique.

Definition at line 87 of file LMFColor.cc.

87  {
88  std::string sql = "SELECT COLOR_INDEX, SNAME, LNAME "
89  "FROM CMS_ECAL_LASER_COND.LMF_COLOR_DEF WHERE COLOR_ID = :1";
90  stmt->setSQL(sql);
91  stmt->setInt(1, id);
92  return sql;
93 }
LMFColor& LMFColor::setColor ( int  index)
inline

Definition at line 31 of file LMFColor.h.

References LMFUnique::fetchID(), IUniqueDBObject::m_ID, LMFUnique::setInt(), and LMFUnique::setString().

31  {
32  setInt("color", index);
33  fetchID();
34  if (m_ID <= 0) {
35  setString("sname", "invalid");
36  }
37  return *this;
38  }
LMFUnique & setInt(std::string key, int value)
Definition: LMFUnique.cc:33
int fetchID()
Definition: LMFUnique.cc:213
LMFUnique & setString(std::string key, std::string value)
Definition: LMFUnique.cc:15
LMFColor& LMFColor::setColor ( const std::string &  s = "blue")
inline

Definition at line 39 of file LMFColor.h.

References alignCSCRings::s, and setName().

39  {
40  setName(s);
41  return *this;
42  }
LMFColor & setName(const std::string &s="blue")
Definition: LMFColor.h:23
LMFColor& LMFColor::setName ( const std::string &  s = "blue")
inline

Definition at line 23 of file LMFColor.h.

References LMFUnique::fetchID(), IUniqueDBObject::m_ID, alignCSCRings::s, LMFUnique::setInt(), and LMFUnique::setString().

Referenced by LMFColor(), and setColor().

23  {
24  setString("sname", s);
25  fetchID();
26  if (m_ID <= 0) {
27  setInt("color", -1);
28  }
29  return *this;
30  }
LMFUnique & setInt(std::string key, int value)
Definition: LMFUnique.cc:33
int fetchID()
Definition: LMFUnique.cc:213
LMFUnique & setString(std::string key, std::string value)
Definition: LMFUnique.cc:15

Friends And Related Function Documentation

friend class EcalCondDBInterface
friend

Definition at line 14 of file LMFColor.h.