DDLRotationAndReflection handles RotationCMSIM and ReflectionRotation elements. More...
#include <DDLRotationAndReflection.h>
Public Member Functions | |
DDLRotationAndReflection (DDLElementRegistry *myreg) | |
Constructor. More... | |
int | isLeftHanded (DD3Vector x, DD3Vector y, DD3Vector z, const std::string &nmspace) |
returns 1 = left handed rotation matrix, 0 = right-handed, -1 = not orthonormal. More... | |
void | processElement (const std::string &name, const std::string &nmspace, DDCompactView &cpv) |
Processing the element. More... | |
~DDLRotationAndReflection (void) | |
Destructor. More... | |
Public Member Functions inherited from DDXMLElement | |
void | appendText (const std::string &inText) |
append to the current (i.e. most recently added) More... | |
virtual std::vector < DDXMLAttribute > ::const_iterator | begin (void) |
virtual void | clear (void) |
clear this element's contents. More... | |
DDXMLElement (DDLElementRegistry *myreg) | |
Constructor. More... | |
DDXMLElement (DDLElementRegistry *myreg, const bool &clearme) | |
Constructor for autoClear element. More... | |
virtual std::vector < DDXMLAttribute > ::const_iterator | end (void) |
virtual const std::string & | get (const std::string &name, size_t aIndex=0) const |
Returns a specific value from the aIndex set of attributes. More... | |
virtual const std::string & | getAttribute (const std::string &name) const |
Access to attributes by name. More... | |
virtual const DDXMLAttribute & | getAttributeSet (size_t aIndex=0) const |
Get a "row" of attributes, i.e. one attribute set. More... | |
virtual const DDName | getDDName (const std::string &defaultNS, const std::string &attname=std::string("name"), size_t aIndex=0) |
const std::string | getText (size_t tindex=0) const |
retrieve the text blob. More... | |
virtual std::vector< std::string > | getVectorAttribute (const std::string &name) |
Returns a set of values as a std::vector of strings, given the attribute name. More... | |
virtual bool | gotText (void) const |
gotText()? kind of like gotMilk? Yes = text has already been encountered. More... | |
virtual bool | isEmpty (void) const |
Have any elements of this type been encountered but not processed? More... | |
void | loadAttributes (const std::string &elemName, const std::vector< std::string > &names, const std::vector< std::string > &values, const std::string &nmspace, DDCompactView &cpv) |
Load the element attributes. More... | |
void | loadText (const std::string &inText) |
Used to load both text and XML comments into this object. More... | |
std::vector< DDXMLAttribute > ::const_iterator & | operator++ (int inc) |
Allow the elements of this type to be iterated over using ++ operator. More... | |
const std::string & | parent (void) const |
access to parent element name More... | |
virtual void | preProcessElement (const std::string &name, const std::string &nmspace, DDCompactView &cpv) |
Called by loadAttributes AFTER attributes are loaded. More... | |
void | setParent (const std::string &pename) |
Set parent element name to central list of names. More... | |
void | setSelf (const std::string &sename) |
Set self element name to central list of names. More... | |
virtual size_t | size (void) const |
Number of elements accumulated. More... | |
virtual void | stream (std::ostream &os) const |
Allow for the elements to have their own streaming method, but also provide a default. More... | |
void | throwError (const std::string &keyMessage) const |
format std::string for throw an error. More... | |
virtual | ~DDXMLElement (void) |
Destructor. More... | |
Private Member Functions | |
DD3Vector | makeX (std::string nmspace) |
DD3Vector | makeY (std::string nmspace) |
DD3Vector | makeZ (std::string nmspace) |
Additional Inherited Members | |
Static Public Member Functions inherited from DDXMLElement | |
static std::string | itostr (int i) |
WARNING: abused by other classes in this system: yet another conversion from int to std::string... More... | |
Protected Attributes inherited from DDXMLElement | |
DDLElementRegistry * | myRegistry_ |
DDLRotationAndReflection handles RotationCMSIM and ReflectionRotation elements.
begin: Tue Oct 30 2001 email: case@ ucdh ep.uc davi s.edu
This is the Rotation and Reflection element processor.
Definition at line 25 of file DDLRotationAndReflection.h.
DDLRotationAndReflection::DDLRotationAndReflection | ( | DDLElementRegistry * | myreg | ) |
Constructor.
Definition at line 27 of file DDLRotationAndReflection.cc.
DDLRotationAndReflection::~DDLRotationAndReflection | ( | void | ) |
int DDLRotationAndReflection::isLeftHanded | ( | DD3Vector | x, |
DD3Vector | y, | ||
DD3Vector | z, | ||
const std::string & | nmspace | ||
) |
returns 1 = left handed rotation matrix, 0 = right-handed, -1 = not orthonormal.
Definition at line 110 of file DDLRotationAndReflection.cc.
References funct::abs(), CastorDataFrameFilter_impl::check(), gather_cfg::cout, DCOUT_V, ClhepEvaluator::eval(), DDLElementRegistry::evaluator(), DDXMLElement::getAttributeSet(), DDXMLElement::getDDName(), DDXMLElement::myRegistry_, and run_regression::ret.
Referenced by processElement().
|
private |
Definition at line 195 of file DDLRotationAndReflection.cc.
References funct::cos(), ClhepEvaluator::eval(), DDLElementRegistry::evaluator(), DDXMLElement::getAttributeSet(), DDXMLElement::myRegistry_, funct::sin(), and x.
Referenced by processElement().
|
private |
Definition at line 213 of file DDLRotationAndReflection.cc.
References funct::cos(), ClhepEvaluator::eval(), DDLElementRegistry::evaluator(), DDXMLElement::getAttributeSet(), DDXMLElement::myRegistry_, funct::sin(), and detailsBasic3DVector::y.
Referenced by processElement().
|
private |
Definition at line 231 of file DDLRotationAndReflection.cc.
References funct::cos(), ClhepEvaluator::eval(), DDLElementRegistry::evaluator(), DDXMLElement::getAttributeSet(), DDXMLElement::myRegistry_, funct::sin(), and detailsBasic3DVector::z.
Referenced by processElement().
|
virtual |
Processing the element.
The processElement method completes any necessary work to process the XML element.
For example, this can be used to call the DDCore to make the geometry in memory. There is a default for this so that if not declared in the inheriting class, no processing is done.
Reimplemented from DDXMLElement.
Definition at line 35 of file DDLRotationAndReflection.cc.
References DDXMLElement::clear(), DCOUT_V, DDrot(), DDrotReflect(), ClhepEvaluator::eval(), DDLElementRegistry::evaluator(), DDXMLElement::getAttributeSet(), DDXMLElement::getDDName(), isLeftHanded(), makeX(), makeY(), makeZ(), lumiQueryAPI::msg, DDXMLElement::myRegistry_, AlCaHLTBitMon_QueryRunRegistry::string, DDXMLElement::throwError(), x, detailsBasic3DVector::y, and detailsBasic3DVector::z.