GaudiDict Namespace Reference

Classes

struct  KeyedContainerDict
 
struct  KeyedObjectDict
 

Functions

std::string typeName (const std::type_info &typ)
 
std::string vectorName (const std::type_info &typ)
 
std::string vectorName (const std::string &typ)
 
std::string pairName (const std::type_info &typ1, const std::type_info &typ2)
 
std::string relationName (const std::string &prefix, const std::type_info &typ1, const std::type_info &typ2)
 
std::string templateName1 (std::string templ, const std::type_info &typ)
 
std::string templateName1 (std::string templ, const std::string &typ)
 
std::string templateName2 (std::string templ, const std::type_info &typ1, const std::type_info &typ2)
 
std::string templateName3 (std::string templ, const std::type_info &typ1, const std::type_info &typ2, const std::type_info &typ3)
 
std::string keyedContainerName (const std::string &prefix, const std::type_info &typ1)
 

Function Documentation

std::string GaudiDict::keyedContainerName ( const std::string prefix,
const std::type_info typ1 
)

Definition at line 72 of file Dictionary.cpp.

72  {
73  std::string s = "KeyedContainer<";
74  s += typeName(typ1);
75  s += ",";
76  s += mgr_typ;
77  if ( mgr_typ[mgr_typ.length()-1]=='>' ) s += " ";
78  s += ">";
79  return clean(s);
80 }
STL class.
string s
Definition: gaudirun.py:245
std::string typeName(const std::type_info &typ)
Definition: Dictionary.cpp:21
std::string GaudiDict::pairName ( const std::type_info typ1,
const std::type_info typ2 
)

Definition at line 68 of file Dictionary.cpp.

68  {
69  return templateName2("std::pair", typ1, typ2);
70 }
std::string templateName2(std::string templ, const std::type_info &typ1, const std::type_info &typ2)
Definition: Dictionary.cpp:40
std::string GaudiDict::relationName ( const std::string prefix,
const std::type_info typ1,
const std::type_info typ2 
)

Definition at line 82 of file Dictionary.cpp.

82  {
83  return "";
84 }
std::string GaudiDict::templateName1 ( std::string  templ,
const std::type_info typ 
)

Definition at line 29 of file Dictionary.cpp.

29  {
30  return templateName1(std::move(templ), typeName(typ));
31 }
T move(T...args)
std::string templateName1(std::string templ, const std::string &typ)
Definition: Dictionary.cpp:33
std::string typeName(const std::type_info &typ)
Definition: Dictionary.cpp:21
std::string GaudiDict::templateName1 ( std::string  templ,
const std::string typ 
)

Definition at line 33 of file Dictionary.cpp.

33  {
34  s += "<";
35  s += typ;
36  s += ( s.back() == '>') ? " >" : ">"; // with C++11, we can have <somename<T>>...
37  return clean(s);
38 }
string s
Definition: gaudirun.py:245
std::string GaudiDict::templateName2 ( std::string  templ,
const std::type_info typ1,
const std::type_info typ2 
)

Definition at line 40 of file Dictionary.cpp.

40  {
41  s += "<";
42  s += typeName(typ1);
43  s += ",";
44  s += typeName(typ2);
45  s += (s.back() == '>') ? " >" : ">";
46  return clean(s);
47 }
string s
Definition: gaudirun.py:245
std::string typeName(const std::type_info &typ)
Definition: Dictionary.cpp:21
std::string GaudiDict::templateName3 ( std::string  templ,
const std::type_info typ1,
const std::type_info typ2,
const std::type_info typ3 
)

Definition at line 49 of file Dictionary.cpp.

49  {
50  s += "<";
51  s += typeName(typ1);
52  s += ",";
53  s += typeName(typ2);
54  s += ",";
55  s += typeName(typ3);
56  s += (s.back() == '>') ? " >" : ">";
57  return clean(s);
58 }
string s
Definition: gaudirun.py:245
std::string typeName(const std::type_info &typ)
Definition: Dictionary.cpp:21
std::string GaudiDict::typeName ( const std::type_info typ)

Definition at line 21 of file Dictionary.cpp.

21  {
22  std::string r = clean(System::typeinfoName(typ));
23  //if ( r.compare(0,4,"enum") == 0 ) {
24  // r = "int";
25  //}
26  return r;
27 }
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
Definition: System.cpp:299
STL class.
std::string GaudiDict::vectorName ( const std::type_info typ)

Definition at line 60 of file Dictionary.cpp.

60  {
61  return templateName1("std::vector", typ);
62 }
std::string templateName1(std::string templ, const std::string &typ)
Definition: Dictionary.cpp:33
std::string GaudiDict::vectorName ( const std::string typ)

Definition at line 64 of file Dictionary.cpp.

64  {
65  return templateName1("std::vector", typ);
66 }
std::string templateName1(std::string templ, const std::string &typ)
Definition: Dictionary.cpp:33