Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
11 #include "GaudiKernel/System.h"
24 if( ( ti ==
typeid(
char* ) ) ||
25 ( ti ==
typeid( Char_t ) ) ||
26 ( ti ==
typeid( UChar_t ) ) ||
27 ( ti ==
typeid( Short_t ) ) ||
28 ( ti ==
typeid( UShort_t ) ) ||
29 ( ti ==
typeid( Int_t ) ) ||
30 ( ti ==
typeid( UInt_t ) ) ||
31 ( ti ==
typeid( Float_t ) ) ||
32 ( ti ==
typeid( Double_t ) ) ||
33 ( ti ==
typeid( Long64_t ) ) ||
34 ( ti ==
typeid( ULong64_t ) ) ||
35 ( ti ==
typeid( Bool_t ) ) ) {
44 const char* rootPrimitiveType(
const std::type_info& ti ) {
46 if( ti ==
typeid(
char* ) ) {
48 }
else if( ti ==
typeid( Char_t ) ) {
50 }
else if( ti ==
typeid( UChar_t ) ) {
52 }
else if( ti ==
typeid( Short_t ) ) {
54 }
else if( ti ==
typeid( UShort_t ) ) {
56 }
else if( ti ==
typeid( Int_t ) ) {
58 }
else if( ti ==
typeid( UInt_t ) ) {
60 }
else if( ti ==
typeid( Float_t ) ) {
62 }
else if( ti ==
typeid( Double_t ) ) {
64 }
else if( ti ==
typeid( Long64_t ) ) {
66 }
else if( ti ==
typeid( ULong64_t ) ) {
68 }
else if( ti ==
typeid( Bool_t ) ) {
86 const std::type_info& ti,
88 const std::string& docstring,
89 const void* defval ) {
92 return StatusCode::SUCCESS;
96 const std::type_info& ti,
98 const std::string&
dim,
99 const std::string& docstring,
100 const void* defval ) {
104 return StatusCode::SUCCESS;
109 const std::type_info& ) {
112 <<
"addMetadata(...) not implemented";
113 return StatusCode::FAILURE;
119 <<
"capture() not implemented";
120 return StatusCode::FAILURE;
126 <<
"clear() not implemented";
127 return StatusCode::FAILURE;
133 <<
"redim(...) not implemented";
134 return StatusCode::FAILURE;
170 bool header_needed =
false;
171 std::set< D3PD::ObjectMetadata::Variable >::const_iterator itr =
173 std::set< D3PD::ObjectMetadata::Variable >::const_iterator
end =
175 for( ; itr !=
end; ++itr ) {
176 if( itr->type().find(
name ) != std::string::npos ) {
177 header_needed =
true;
183 if( header_needed ) {
184 out <<
"#include <" <<
name <<
">" << std::endl;
virtual StatusCode clear()
Function clearing the D3PD variables. Not implemented here!
ObjectMetadata m_metadata
Object holding the information about the variables.
bool isPrimitive(const std::string &type)
This function is used in the code generator to determine from a type name if it's a primitive type or...
virtual void setIsContainer(bool isContainer)
Set the "isCollection" parameter of the object.
virtual StatusCode addVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &docstring="", const void *defval=0)
Main function for adding a variable to the D3PD.
Block filler tool for noisy FEB information.
virtual StatusCode redim(const Dim_t *ptr)
Function currently not used by the D3PDMaker code.
virtual StatusCode addDimensionedVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &dim, const std::string &docstring="", const void *defval=0)
Function currently not used by the D3PDMaker code.
::StatusCode StatusCode
StatusCode definition for legacy code.
#define CHECK(...)
Evaluate an expression and check for errors.
virtual bool isContainer() const
Get the "isCollection" parameter of the object.
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
virtual StatusCode addMetadata(const std::string &key, const void *obj, const std::type_info &ti)
Function adding metadata to the D3PD. Not implemented here!
Helpers for checking error return status codes and reporting errors.
unsigned int Dim_t
Currently unimplemented — see design note.
void addSTLHeader(std::ostream &out, const char *name) const
Function adding STL include statements to the header when needed.
RootReaderD3PDBase()
Quite empty constructor.
virtual const std::string & prefix() const
Get the common prefix of the variables.
virtual void setPrefix(const std::string &prefix)
Set the common prefix of the variables.
virtual StatusCode capture()
Function capturing the current value of the D3PD variables. Not implemented here!