The Gaudi Framework  master (ff829712)
Loading...
Searching...
No Matches
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

◆ keyedContainerName()

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

Definition at line 79 of file Dictionary.cpp.

79 {
80 std::string s = "KeyedContainer<";
81 s += typeName( typ1 );
82 s += ",";
83 s += mgr_typ;
84 if ( mgr_typ[mgr_typ.length() - 1] == '>' ) s += " ";
85 s += ">";
86 return clean( s );
87}
std::string typeName(const std::type_info &typ)

◆ pairName()

std::string GaudiDict::pairName ( const std::type_info & typ1,
const std::type_info & typ2 )

Definition at line 75 of file Dictionary.cpp.

75 {
76 return templateName2( "std::pair", typ1, typ2 );
77}
std::string templateName2(std::string templ, const std::type_info &typ1, const std::type_info &typ2)

◆ relationName()

std::string GaudiDict::relationName ( const std::string & prefix,
const std::type_info & typ1,
const std::type_info & typ2 )

Definition at line 89 of file Dictionary.cpp.

90 {
91 return "";
92}

◆ templateName1() [1/2]

std::string GaudiDict::templateName1 ( std::string templ,
const std::string & typ )

Definition at line 43 of file Dictionary.cpp.

43 {
44 s += "<";
45 s += typ;
46 s += ( s.back() == '>' ) ? " >" : ">"; // with C++11, we can have <somename<T>>...
47 return clean( s );
48}

◆ templateName1() [2/2]

std::string GaudiDict::templateName1 ( std::string templ,
const std::type_info & typ )

Definition at line 39 of file Dictionary.cpp.

39 {
40 return templateName1( std::move( templ ), typeName( typ ) );
41}
std::string templateName1(std::string templ, const std::type_info &typ)

◆ templateName2()

std::string GaudiDict::templateName2 ( std::string templ,
const std::type_info & typ1,
const std::type_info & typ2 )

Definition at line 50 of file Dictionary.cpp.

50 {
51 s += "<";
52 s += typeName( typ1 );
53 s += ",";
54 s += typeName( typ2 );
55 s += ( s.back() == '>' ) ? " >" : ">";
56 return clean( s );
57}

◆ templateName3()

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 59 of file Dictionary.cpp.

60 {
61 s += "<";
62 s += typeName( typ1 );
63 s += ",";
64 s += typeName( typ2 );
65 s += ",";
66 s += typeName( typ3 );
67 s += ( s.back() == '>' ) ? " >" : ">";
68 return clean( s );
69}

◆ typeName()

std::string GaudiDict::typeName ( const std::type_info & typ)

Definition at line 31 of file Dictionary.cpp.

31 {
32 std::string r = clean( System::typeinfoName( typ ) );
33 // if ( r.compare(0,4,"enum") == 0 ) {
34 // r = "int";
35 //}
36 return r;
37}
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
Definition System.cpp:260

◆ vectorName() [1/2]

std::string GaudiDict::vectorName ( const std::string & typ)

Definition at line 73 of file Dictionary.cpp.

73{ return templateName1( "std::vector", typ ); }

◆ vectorName() [2/2]

std::string GaudiDict::vectorName ( const std::type_info & typ)

Definition at line 71 of file Dictionary.cpp.

71{ return templateName1( "std::vector", typ ); }