CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Namespaces | Macros | Functions
DbCore.h File Reference
#include "CondCore/CondDB/interface/Exception.h"
#include "CondCore/CondDB/interface/Binary.h"
#include "CondCore/CondDB/interface/Time.h"
#include "CondCore/CondDB/interface/Types.h"
#include "CoralBase/AttributeList.h"
#include "CoralBase/Attribute.h"
#include "CoralBase/AttributeSpecification.h"
#include "CoralBase/Blob.h"
#include "CoralBase/TimeStamp.h"
#include "RelationalAccess/ICursor.h"
#include "RelationalAccess/ISchema.h"
#include "RelationalAccess/ISessionProxy.h"
#include "RelationalAccess/IQuery.h"
#include "RelationalAccess/TableDescription.h"
#include "RelationalAccess/ITable.h"
#include "RelationalAccess/ITableDataEditor.h"
#include "RelationalAccess/IBulkOperation.h"
#include "RelationalAccess/SchemaException.h"
#include <tuple>
#include <cstring>
#include <set>
#include <map>
#include <memory>
#include <boost/shared_ptr.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>

Go to the source code of this file.

Classes

struct  cond::persistency::AttributeTypeName< T >
 
struct  cond::persistency::AttributeTypeName< boost::posix_time::ptime >
 
struct  cond::persistency::AttributeTypeName< cond::Binary >
 
struct  cond::persistency::AttributeTypeName< cond::SynchronizationType >
 
struct  cond::persistency::AttributeTypeName< cond::TimeType >
 
class  cond::persistency::BulkInserter< Types >
 
struct  cond::persistency::DefineQueryOutput< T >
 
struct  cond::persistency::DefineQueryOutput< boost::posix_time::ptime >
 
struct  cond::persistency::DefineQueryOutput< cond::Binary >
 
struct  cond::persistency::DefineQueryOutput< cond::SynchronizationType >
 
struct  cond::persistency::DefineQueryOutput< cond::TimeType >
 
struct  cond::persistency::DefineQueryOutput< std::array< char, n > >
 
class  cond::persistency::DeleteBuffer
 
struct  cond::persistency::GetFromRow< T >
 
struct  cond::persistency::GetFromRow< boost::posix_time::ptime >
 
struct  cond::persistency::GetFromRow< cond::Binary >
 
struct  cond::persistency::GetFromRow< cond::SynchronizationType >
 
struct  cond::persistency::GetFromRow< cond::TimeType >
 
struct  cond::persistency::GetFromRow< std::array< char, n > >
 
class  cond::persistency::Query< Types >
 
class  cond::persistency::Query< Types >
 
class  cond::persistency::QueryIterator< Types >
 
class  cond::persistency::RowBuffer< Columns >
 
class  cond::persistency::TableDescription< Types >
 
class  cond::persistency::UpdateBuffer
 

Namespaces

 cond
 
 cond::persistency
 

Macros

#define conddb_column(...)   SELECT_COLUMN_MACRO(__VA_ARGS__)(__VA_ARGS__)
 
#define conddb_table(NAME)
 
#define FIXSIZE_COLUMN(NAME, TYPE, SIZE)
 
#define GET_4TH_ARG(arg1, arg2, arg3, arg4,...)   arg4
 
#define SELECT_COLUMN_MACRO(...)   GET_4TH_ARG(__VA_ARGS__, FIXSIZE_COLUMN, VARSIZE_COLUMN, WRONG_PAR_NUMBER_ERROR )
 
#define VARSIZE_COLUMN(NAME, TYPE)   FIXSIZE_COLUMN( NAME, TYPE, 0 )
 
#define WRONG_PAR_NUMBER_ERROR(...)   static_assert( false, "\"column\" macro accepts exactly 2 or 3 parameters" )
 

Functions

template<typename T >
void cond::persistency::f_add_column_description (coral::TableDescription &table, const std::string &columnName, size_t size=0, bool notNull=true)
 
template<typename T , typename Arg1 >
bool cond::persistency::is_same_any ()
 
template<typename T , typename Arg1 , typename Arg2 , typename... Args>
bool cond::persistency::is_same_any ()
 
template<typename T , typename P >
void cond::persistency::static_assert_is_same_decayed ()
 

Macro Definition Documentation

#define conddb_column (   ...)    SELECT_COLUMN_MACRO(__VA_ARGS__)(__VA_ARGS__)

Definition at line 74 of file DbCore.h.

#define conddb_table (   NAME)
Value:
namespace NAME {\
static constexpr char const* tname = #NAME ;\
}\
namespace NAME
static char const * tname
Definition: GTSchema.h:13
#define constexpr

Definition at line 49 of file DbCore.h.

#define FIXSIZE_COLUMN (   NAME,
  TYPE,
  SIZE 
)
Value:
struct NAME {\
static constexpr char const* name = #NAME; \
typedef TYPE type;\
static constexpr size_t size = SIZE;\
static std::string tableName(){ return std::string(tname); }\
static std::string fullyQualifiedName(){ return std::string(tname)+"."+name; }\
};\
type
Definition: HCALResponse.h:21
list TYPE
Definition: runonSM.py:20
static char const * tname
Definition: GTSchema.h:13
#define constexpr
tuple size
Write out results.

Definition at line 57 of file DbCore.h.

#define GET_4TH_ARG (   arg1,
  arg2,
  arg3,
  arg4,
  ... 
)    arg4

Definition at line 69 of file DbCore.h.

#define SELECT_COLUMN_MACRO (   ...)    GET_4TH_ARG(__VA_ARGS__, FIXSIZE_COLUMN, VARSIZE_COLUMN, WRONG_PAR_NUMBER_ERROR )

Definition at line 71 of file DbCore.h.

#define VARSIZE_COLUMN (   NAME,
  TYPE 
)    FIXSIZE_COLUMN( NAME, TYPE, 0 )

Definition at line 66 of file DbCore.h.

#define WRONG_PAR_NUMBER_ERROR (   ...)    static_assert( false, "\"column\" macro accepts exactly 2 or 3 parameters" )

Definition at line 70 of file DbCore.h.