CMS 3D CMS Logo

Macros
register_itemaccessorbase_macro.h File Reference
#include "FWCore/Utilities/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

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

Definition at line 35 of file register_itemaccessorbase_macro.h.

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

Definition at line 34 of file register_itemaccessorbase_macro.h.

#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__)}
std::string name() const
#define CONCATENATE(a, b)

Definition at line 37 of file register_itemaccessorbase_macro.h.

#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__)}
std::string name() const
#define CONCATENATE(a, b)

Definition at line 47 of file register_itemaccessorbase_macro.h.

#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.