CMS 3D CMS Logo

Macros
register_itemaccessorbase_macro.h File Reference
#include "FWCore/Reflection/interface/TypeWithDict.h"

Go to the source code of this file.

Macros

#define CONCATENATE(a, b)   CONCATENATE_HIDDEN(a, b)
 
#define CONCATENATE_HIDDEN(a, b)   a##b
 
#define DEFINE_FWITEMACCESSOR_METHODS(_accessor_, _type_, _purpose_)
 
#define DEFINE_TEMPLATE_FWITEMACCESSOR_METHODS(_accessor_, _type_, _purpose_)
 
#define REGISTER_FWITEMACCESSOR_METHODS()
 

Macro Definition Documentation

◆ CONCATENATE

#define CONCATENATE (   a,
  b 
)    CONCATENATE_HIDDEN(a, b)

Definition at line 35 of file register_itemaccessorbase_macro.h.

◆ CONCATENATE_HIDDEN

#define CONCATENATE_HIDDEN (   a,
  b 
)    a##b

Definition at line 34 of file register_itemaccessorbase_macro.h.

◆ DEFINE_FWITEMACCESSOR_METHODS

#define DEFINE_FWITEMACCESSOR_METHODS (   _accessor_,
  _type_,
  _purpose_ 
)
Value:
const std::string& _accessor_::classTypeName() { \
static std::string s_type = edm::TypeWithDict(typeid(_type_)).name(); \
return s_type; \
} \
const std::string& _accessor_::classRegisterTypeName() { \
static std::string s_type(typeid(_type_).name()); \
return s_type; \
} \
const std::string& _accessor_::classPurpose() { \
static std::string s_purpose(_purpose_); \
return s_purpose; \
} \
enum { CONCATENATE(dummy_itemaccessor_methods_, __LINE__) }

Definition at line 37 of file register_itemaccessorbase_macro.h.

◆ DEFINE_TEMPLATE_FWITEMACCESSOR_METHODS

#define DEFINE_TEMPLATE_FWITEMACCESSOR_METHODS (   _accessor_,
  _type_,
  _purpose_ 
)
Value:
template <> \
const std::string& _accessor_::classTypeName() { \
static std::string s_type = edm::TypeWithDict(typeid(_type_)).name(); \
return s_type; \
} \
template <> \
const std::string& _accessor_::classRegisterTypeName() { \
static std::string s_type(typeid(_type_).name()); \
return s_type; \
} \
template <> \
const std::string& _accessor_::classPurpose() { \
static std::string s_purpose(_purpose_); \
return s_purpose; \
} \
enum { CONCATENATE(dummy_itemaccessor_methods_, __LINE__) }

Definition at line 52 of file register_itemaccessorbase_macro.h.

◆ REGISTER_FWITEMACCESSOR_METHODS

#define REGISTER_FWITEMACCESSOR_METHODS ( )
Value:
const std::string& typeName() const { return classTypeName(); } \
const std::string& purpose() const { return classPurpose(); } \
static const std::string& classRegisterTypeName(); \
static const std::string& classTypeName(); \
static const std::string& classPurpose()

Description: Adds needed methods to a FWItemAccessorBase

Usage: <usage>

Definition at line 27 of file register_itemaccessorbase_macro.h.

hgcalPlots.purpose
purpose
Definition: hgcalPlots.py:2679
CONCATENATE
#define CONCATENATE(a, b)
Definition: register_itemaccessorbase_macro.h:35
dqmiodumpindices.typeName
typeName
Definition: dqmiodumpindices.py:33
edm::TypeWithDict
Definition: TypeWithDict.h:38
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
edm::TypeWithDict::name
std::string name() const
Definition: TypeWithDict.cc:456