Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
cheprep::DefaultHepRepInstance Class Reference

#include <DefaultHepRepInstance.h>

Inheritance diagram for cheprep::DefaultHepRepInstance:
cheprep::DefaultHepRepAttribute HEPREP::HepRepInstance HEPREP::HepRepAttribute HEPREP::HepRepAttribute

Public Member Functions

 DefaultHepRepInstance (HEPREP::HepRepInstance *parent, HEPREP::HepRepType *type)
 
 DefaultHepRepInstance (HEPREP::HepRepInstanceTree *parent, HEPREP::HepRepType *type)
 
 ~DefaultHepRepInstance ()
 
void overlay (HEPREP::HepRepInstance *instance)
 
HEPREP::HepRepInstancecopy (HEPREP::HepRepTypeTree *typeTree, HEPREP::HepRepInstance *parent, HEPREP::HepRepSelectFilter *filter)
 
HEPREP::HepRepInstancecopy (HEPREP::HepRepTypeTree *typeTree, HEPREP::HepRepInstanceTree *parent, HEPREP::HepRepSelectFilter *filter)
 
HEPREP::HepRepTypegetType ()
 
void addPoint (HEPREP::HepRepPoint *point)
 
std::vector
< HEPREP::HepRepPoint * > 
getPoints ()
 
HEPREP::HepRepInstancegetSuperInstance ()
 
void addInstance (HEPREP::HepRepInstance *instance)
 
void removeInstance (HEPREP::HepRepInstance *instance)
 
std::vector
< HEPREP::HepRepInstance * > 
getInstances ()
 
HEPREP::HepRepAttValuegetAttValue (std::string name)
 
voidgetParent ()
 
- 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)
 
- Public Member Functions inherited from HEPREP::HepRepAttribute
virtual ~HepRepAttribute ()
 Destructor. More...
 
- Public Member Functions inherited from HEPREP::HepRepInstance
virtual ~HepRepInstance ()
 Destructor. More...
 

Detailed Description

Definition at line 27 of file DefaultHepRepInstance.h.

Constructor & Destructor Documentation

cheprep::DefaultHepRepInstance::DefaultHepRepInstance ( HEPREP::HepRepInstance parent,
HEPREP::HepRepType type 
)

Definition at line 16 of file DefaultHepRepInstance.cc.

References HEPREP::HepRepInstance::addInstance().

17  : DefaultHepRepAttribute(), parent(instance), type(heprepType) {
18 
19  if (type == NULL) cerr << "HepRepInstance cannot be created without a HepRepType." << endl;
20  parent->addInstance(this);
21 }
virtual void addInstance(HepRepInstance *instance)=0
cheprep::DefaultHepRepInstance::DefaultHepRepInstance ( HEPREP::HepRepInstanceTree parent,
HEPREP::HepRepType type 
)

Definition at line 23 of file DefaultHepRepInstance.cc.

References HEPREP::HepRepInstanceTree::addInstance().

24  : DefaultHepRepAttribute(), parent(NULL), type(heprepType) {
25 
26  if (type == NULL) cerr << "HepRepInstance cannot be created without a HepRepType." << endl;
27  instanceTree->addInstance(this);
28 }
cheprep::DefaultHepRepInstance::~DefaultHepRepInstance ( )

Definition at line 30 of file DefaultHepRepInstance.cc.

30  {
31  parent = NULL;
32  type = NULL;
33  for (vector<HepRepInstance*>::iterator i1 = instances.begin(); i1 != instances.end(); i1++) {
34  delete (*i1);
35  }
36  for (vector<HepRepPoint*>::iterator i2 = points.begin(); i2 != points.end(); i2++) {
37  delete (*i2);
38  }
39 }

Member Function Documentation

void cheprep::DefaultHepRepInstance::addInstance ( HEPREP::HepRepInstance instance)
virtual

Adds an sub-instance to this instance.

Parameters
instancesub-instance.

Implements HEPREP::HepRepInstance.

Definition at line 71 of file DefaultHepRepInstance.cc.

71  {
72  instances.push_back(instance);
73 }
void cheprep::DefaultHepRepInstance::addPoint ( HEPREP::HepRepPoint point)
virtual

Adds a point to this instance.

Parameters
pointto be added.

Implements HEPREP::HepRepInstance.

Definition at line 59 of file DefaultHepRepInstance.cc.

59  {
60  points.push_back(point);
61 }
HepRepInstance * cheprep::DefaultHepRepInstance::copy ( HEPREP::HepRepTypeTree typeTree,
HEPREP::HepRepInstance parent,
HEPREP::HepRepSelectFilter filter 
)
virtual

Returns a deep copy of this instance.

Parameters
typeTreeneeded to find the associated type.
parentto which the copy is added.
filterrun on all instances before copying.
Returns
copy of this instance.

Implements HEPREP::HepRepInstance.

Definition at line 45 of file DefaultHepRepInstance.cc.

45  {
46  cerr << "DefaultHepRepInstance::copy(HepRepTypeTree*, HepRepInstance*, HepRepSelectFilter*) not implemented." << endl;
47  return NULL;
48 }
HepRepInstance * cheprep::DefaultHepRepInstance::copy ( HEPREP::HepRepTypeTree typeTree,
HEPREP::HepRepInstanceTree parent,
HEPREP::HepRepSelectFilter filter 
)
virtual

Returns a deep copy of this instance.

Parameters
typeTreeneeded to find the associated type.
parentto which the copy is added.
filterrun on all instances before copying.
Returns
copy of this instance.

Implements HEPREP::HepRepInstance.

Definition at line 50 of file DefaultHepRepInstance.cc.

50  {
51  cerr << "DefaultHepRepInstance::copy(HepRepTypeTree*, HepRepInstanceTree*, HepRepSelectFilter*) not implemented." << endl;
52  return NULL;
53 }
HepRepAttValue * cheprep::DefaultHepRepInstance::getAttValue ( std::string  name)
virtual

Returns the attValue specified by name. This attValue is normally searched on the node itself and then on its type, moving up the typetree.

Parameters
nameof attribute value.
Returns
attribute value.

Implements cheprep::DefaultHepRepAttribute.

Definition at line 83 of file DefaultHepRepInstance.cc.

References HEPREP::HepRepAttribute::getAttValue(), and cheprep::DefaultHepRepAttribute::getAttValueFromNode().

83  {
85  return (value != NULL) ? value : type->getAttValue(name);
86 }
const XML_Char * name
virtual HepRepAttValue * getAttValue(std::string name)=0
HEPREP::HepRepAttValue * getAttValueFromNode(std::string lowerCaseName)
const XML_Char int const XML_Char * value
vector< HepRepInstance * > cheprep::DefaultHepRepInstance::getInstances ( )
virtual

Returns a collection of all sub-instances this instance keeps.

Returns
collection of HepRepInstances.

Implements HEPREP::HepRepInstance.

Definition at line 79 of file DefaultHepRepInstance.cc.

79  {
80  return instances;
81 }
void* cheprep::DefaultHepRepInstance::getParent ( )
inline

Definition at line 53 of file DefaultHepRepInstance.h.

53 { return parent; }
vector< HepRepPoint * > cheprep::DefaultHepRepInstance::getPoints ( )
virtual

Returns a collection of all points this instance keeps.

Returns
collection of HepRepPoints.

Implements HEPREP::HepRepInstance.

Definition at line 63 of file DefaultHepRepInstance.cc.

63  {
64  return points;
65 }
HepRepInstance * cheprep::DefaultHepRepInstance::getSuperInstance ( )
virtual

Fills a double[3][n] array with the coordinates of all points, if none of the points have any attributes defined on them. The actual number of points filled is returned. In case the number of points is larger than n, or if any points have attributes, -1 is returned. One could then call getPoint().

See also
getPoints()
Parameters
xyza double[3][n] array to be filled with points.
Returns
number of points filled in xyz, or -1 in case of error or non-implementation.

ONLY in JAVA Returns true if this instance has a frame. Speedy access for iterator.

ONLY in JAVA Returns String layername. Speedy access for iterator.

ONLY in JAVA Returns the parent of this instance.

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

Implements HEPREP::HepRepInstance.

Definition at line 67 of file DefaultHepRepInstance.cc.

67  {
68  return parent;
69 }
HepRepType * cheprep::DefaultHepRepInstance::getType ( )
virtual

Returns the associated type for this instance.

Returns
associated HepRepType.

Implements HEPREP::HepRepInstance.

Definition at line 55 of file DefaultHepRepInstance.cc.

55  {
56  return type;
57 }
void cheprep::DefaultHepRepInstance::overlay ( HEPREP::HepRepInstance instance)
virtual

Overlays the instance on the current instance.

Attributes of the instance override or are added to the current instance. Sub-instances of the instance are added only if the current instance has no sub-instances. Points of the instance are added only if the current instance has no points.

Implements HEPREP::HepRepInstance.

Definition at line 41 of file DefaultHepRepInstance.cc.

41  {
42  cerr << "DefaultHepRepInstance::overlay(HepRepInstance * instance) not implemented." << endl;
43 }
void cheprep::DefaultHepRepInstance::removeInstance ( HEPREP::HepRepInstance instance)
virtual

Removes a sub-instance from this instance.

Parameters
instancesub-instance.

Implements HEPREP::HepRepInstance.

Definition at line 75 of file DefaultHepRepInstance.cc.

75  {
76  cerr << "DefaultHepRepInstance::removeInstance(HepRepInstance*) not implemented." << endl;
77 }

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