Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
cheprep::DefaultHepRepType Class Reference

#include <DefaultHepRepType.h>

+ Inheritance diagram for cheprep::DefaultHepRepType:

Public Member Functions

 DefaultHepRepType (HEPREP::HepRepType *parent, std::string name)
 
 DefaultHepRepType (HEPREP::HepRepTypeTree *parent, std::string name)
 
 ~DefaultHepRepType ()
 
HEPREP::HepRepTypegetSuperType ()
 
HEPREP::HepRepAttDefgetAttDef (std::string name)
 
HEPREP::HepRepAttValuegetAttValue (std::string name)
 
HEPREP::HepRepTypecopy (HEPREP::HepRepType *parent)
 
std::string getName ()
 
std::string getFullName ()
 
std::string getDescription ()
 
void setDescription (std::string description)
 
std::string getInfoURL ()
 
void setInfoURL (std::string infoURL)
 
void addType (HEPREP::HepRepType *type)
 
std::vector< HEPREP::HepRepType * > getTypeList ()
 
- Public Member Functions inherited from cheprep::DefaultHepRepDefinition
 DefaultHepRepDefinition ()
 
 ~DefaultHepRepDefinition ()
 
void addAttDef (HEPREP::HepRepAttDef *hepRepAttDef)
 
void addAttDef (std::string name, std::string desc, std::string type, std::string extra)
 
std::set< HEPREP::HepRepAttDef * > getAttDefsFromNode ()
 
HEPREP::HepRepAttDefgetAttDefFromNode (std::string lowerCaseName)
 
HEPREP::HepRepAttDefgetAttDef (std::string name)=0
 
HEPREP::HepRepAttValuegetAttValue (std::string name)=0
 
- Public Member Functions inherited from cheprep::DefaultHepRepAttribute
 DefaultHepRepAttribute ()
 
 ~DefaultHepRepAttribute ()
 
std::set< HEPREP::HepRepAttValue * > getAttValuesFromNode ()
 
void addAttValue (HEPREP::HepRepAttValue *hepRepAttValue)
 
void addAttValue (std::string key, char *value, int showLabel)
 
void addAttValue (std::string key, std::string value, int showLabel)
 
void addAttValue (std::string key, int value, int showLabel)
 
void addAttValue (std::string key, int64 value, int showLabel)
 
void addAttValue (std::string key, double value, int showLabel)
 
void addAttValue (std::string key, bool value, int showLabel)
 
void addAttValue (std::string key, std::vector< double > value, int showLabel)
 
void addAttValue (std::string key, double red, double green, double blue, double alpha, int showLabel)
 
HEPREP::HepRepAttValuegetAttValueFromNode (std::string lowerCaseName)
 
HEPREP::HepRepAttValueremoveAttValue (std::string key)
 
HEPREP::HepRepAttValuegetAttValue (std::string name)=0
 
- Public Member Functions inherited from HEPREP::HepRepAttribute
virtual ~HepRepAttribute ()
 Destructor.
 
virtual void addAttValue (HepRepAttValue *attValue)=0
 
virtual void addAttValue (std::string key, char *value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, std::string value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, int64 value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, int value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, double value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, bool value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, std::vector< double > value, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual void addAttValue (std::string key, double red, double green, double blue, double alpha=1.0, int showLabel=HepRepConstants::SHOW_NONE)=0
 
virtual HepRepAttValueremoveAttValue (std::string key)=0
 
virtual HepRepAttValuegetAttValue (std::string name)=0
 
virtual std::set< HepRepAttValue * > getAttValuesFromNode ()=0
 
virtual HepRepAttValuegetAttValueFromNode (std::string lowerCaseName)=0
 
- Public Member Functions inherited from HEPREP::HepRepDefinition
virtual ~HepRepDefinition ()
 Destructor.
 
virtual void addAttDef (std::string name, std::string desc, std::string category, std::string extra)=0
 
virtual void addAttDef (HepRepAttDef *attDef)=0
 
virtual HepRepAttDefgetAttDef (std::string name)=0
 
virtual std::set< HepRepAttDef * > getAttDefsFromNode ()=0
 
virtual HepRepAttDefgetAttDefFromNode (std::string lowerCaseName)=0
 
- Public Member Functions inherited from HEPREP::HepRepType
virtual ~HepRepType ()
 Destructor.
 
virtual void addType (HepRepType *type)=0
 
virtual std::string getName ()=0
 
virtual std::string getFullName ()=0
 
virtual std::string getDescription ()=0
 
virtual void setDescription (std::string description)=0
 
virtual std::string getInfoURL ()=0
 
virtual void setInfoURL (std::string infoURL)=0
 
virtual HepRepTypegetSuperType ()=0
 
virtual std::vector< HepRepType * > getTypeList ()=0
 
virtual HepRepTypecopy (HepRepType *parent)=0
 

Detailed Description

Definition at line 25 of file DefaultHepRepType.h.

Constructor & Destructor Documentation

◆ DefaultHepRepType() [1/2]

cheprep::DefaultHepRepType::DefaultHepRepType ( HEPREP::HepRepType parent,
std::string  name 
)

Definition at line 14 of file DefaultHepRepType.cc.

15 : DefaultHepRepDefinition(), parent(parentType), name(typeName) {
16 this->description = "No Description";
17 this->infoURL = "No Info URL";
18
19 // HepRepTypes are sometimes used without a parent (top-level)
20 if (parent != NULL) {
21 parent->addType(this);
22 }
23}
virtual void addType(HepRepType *type)=0

◆ DefaultHepRepType() [2/2]

cheprep::DefaultHepRepType::DefaultHepRepType ( HEPREP::HepRepTypeTree parent,
std::string  name 
)

Definition at line 25 of file DefaultHepRepType.cc.

26 : DefaultHepRepDefinition(), parent(NULL), name(typeName) {
27 this->description = "No Description";
28 this->infoURL = "No Info URL";
29
30 parentTypeTree->addType(this);
31}

◆ ~DefaultHepRepType()

cheprep::DefaultHepRepType::~DefaultHepRepType ( )

Definition at line 33 of file DefaultHepRepType.cc.

33 {
34 for (vector<HepRepType*>::iterator i1 = types.begin(); i1 != types.end(); i1++) {
35 delete (*i1);
36 }
37}

Member Function Documentation

◆ addType()

void cheprep::DefaultHepRepType::addType ( HEPREP::HepRepType type)
virtual

Adds a sub-type to this type.

Parameters
typesub-type to be added.

Implements HEPREP::HepRepType.

Definition at line 103 of file DefaultHepRepType.cc.

103 {
104 // FIXME should check if type already exists
105 types.push_back(type);
106}

◆ copy()

HepRepType * cheprep::DefaultHepRepType::copy ( HEPREP::HepRepType parent)
virtual

Returns a deep copy of this type.

Parameters
parentto which this copy is added.
Returns
copy of this type.

Implements HEPREP::HepRepType.

Definition at line 74 of file DefaultHepRepType.cc.

74 {
75 cerr << "DefaultHepRepType::copy(HepRepType*) not implemented." << endl;
76 return NULL;
77}

◆ getAttDef()

HepRepAttDef * cheprep::DefaultHepRepType::getAttDef ( std::string  name)
virtual

Return a named attribute definition searched on this node and any parent nodes.

Parameters
nameof attribute definition.
Returns
attribute definition.

Implements cheprep::DefaultHepRepDefinition.

Definition at line 43 of file DefaultHepRepType.cc.

43 {
44 HepRepAttDef* def = NULL;
45 HepRepType* type = this;
46 while ((def == NULL) && (type != NULL)) {
47 def = type->getAttDefFromNode(defName);
48 type = type->getSuperType();
49 }
50 if (def == NULL) {
51 cerr << "ERROR: No HepRepDefaults, trying to get definition for: " << defName << endl;
52 // FIXME, no HepRepDefaults
53 }
54 return def;
55}
virtual HepRepAttDef * getAttDefFromNode(std::string lowerCaseName)=0
virtual HepRepType * getSuperType()=0

◆ getAttValue()

HepRepAttValue * cheprep::DefaultHepRepType::getAttValue ( std::string  name)
virtual

searched for a value with given name. Search up the type tree if needed.

Implements cheprep::DefaultHepRepDefinition.

Definition at line 60 of file DefaultHepRepType.cc.

60 {
61 HepRepAttValue* value = NULL;
62 HepRepType* type = this;
63 while ((value == NULL) && (type != NULL)) {
64 value = type->getAttValueFromNode(attName);
65 type = type->getSuperType();
66 }
67 if (value == NULL) {
68 cerr << "ERROR: No HepRepDefaults, trying to get value for: " << attName << endl;
69 // FIXME, no HepRepDefaults
70 }
71 return value;
72}
virtual HepRepAttValue * getAttValueFromNode(std::string lowerCaseName)=0

◆ getDescription()

string cheprep::DefaultHepRepType::getDescription ( )
virtual

Returns the description of this type.

Returns
description of type.

Implements HEPREP::HepRepType.

Definition at line 87 of file DefaultHepRepType.cc.

87 {
88 return description;
89}

◆ getFullName()

string cheprep::DefaultHepRepType::getFullName ( )
virtual

Returns the full name of this type. The full name is constructed from the root of the typeTree (without the typeTreeName) by concatenating all the node names separated by slashes "/". For example: Geometry/InnerDetector/Sector24/Wire20

Returns
full name of type.
See also
getName()

Implements HEPREP::HepRepType.

Definition at line 83 of file DefaultHepRepType.cc.

83 {
84 return (getSuperType() == NULL) ? getName() : getSuperType()->getFullName() + "/" + getName();
85}
HEPREP::HepRepType * getSuperType()

◆ getInfoURL()

string cheprep::DefaultHepRepType::getInfoURL ( )
virtual

Returns the information URL of this type.

Returns
info URL of type.

Implements HEPREP::HepRepType.

Definition at line 95 of file DefaultHepRepType.cc.

95 {
96 return infoURL;
97}

◆ getName()

string cheprep::DefaultHepRepType::getName ( )
virtual

Returns the name of this type. This is the full name if one uses flat-types, and the node name if one uses hierarchical typenames. It is the name supplied at construction of the type.

Returns
name of type.
See also
getFullName()

Implements HEPREP::HepRepType.

Definition at line 79 of file DefaultHepRepType.cc.

79 {
80 return name;
81}

Referenced by getFullName().

◆ getSuperType()

HepRepType * cheprep::DefaultHepRepType::getSuperType ( )
virtual

Returns the parent of this type.

Returns
parent of type, or null if top-level.

Implements HEPREP::HepRepType.

Definition at line 39 of file DefaultHepRepType.cc.

39 {
40 return parent;
41}

Referenced by getFullName().

◆ getTypeList()

vector< HepRepType * > cheprep::DefaultHepRepType::getTypeList ( )
virtual

Returns a collection of all the sub-types of this type.

Returns
collection of HepRepTypes.

Implements HEPREP::HepRepType.

Definition at line 108 of file DefaultHepRepType.cc.

108 {
109 return types;
110}

◆ setDescription()

void cheprep::DefaultHepRepType::setDescription ( std::string  description)
virtual

Sets the description of this type.

Parameters
infoURL

Implements HEPREP::HepRepType.

Definition at line 91 of file DefaultHepRepType.cc.

91 {
92 this->description = desc;
93}

◆ setInfoURL()

void cheprep::DefaultHepRepType::setInfoURL ( std::string  infoURL)
virtual

Sets the information URL of this type.

Parameters
infoURL

Implements HEPREP::HepRepType.

Definition at line 99 of file DefaultHepRepType.cc.

99 {
100 this->infoURL = info;
101}

The documentation for this class was generated from the following files: