ATLAS Offline Software
subtractionHandler.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
9 #include <iostream>
13 
14 using namespace xercesc;
15 
18  : XMLHandler(s, c)
19 {
20 // std::cout<<"Creating handler for composition"<<std::endl;
21 }
22 
24  xercesc::DOMNode *t)
25 {
26  AGDDVolumeStore& vs = c.GetVolumeStore();
27  AGDDSectionStore& ss = c.GetSectionStore();
28  AGDDPositionerStore& ps = c.GetPositionerStore();
29 
30  bool res;
31  std::string name=getAttributeAsString(c, t, "name",res);
33 
34  StopLoop(true);
35 
36  DOMNode* child;
37 
38  int before=ps.NrOfPositioners();
39 
40  IAGDDParser& parser = *c.GetParser();
41  for (child=t->getFirstChild();child!=0;child=child->getNextSibling())
42  {
43  if (child->getNodeType()==DOMNode::ELEMENT_NODE) {
44  parser.elementLoop(c, child);
45  }
46  }
47 
48  int after=ps.NrOfPositioners();
49  for (int i=before;i<after;i++)
50  {
51  AGDDPositioner *posit=ps.GetPositioner(i);
52  if (vs.Exist(posit->Volume()))
53  s->AddDaughter(posit);
54  }
55 
56  std::string col=getAttributeAsString(c, t, "color",res);
57  if (res)
58  s->SetColor(col);
59 }
AGDDController.h
python.CaloScaleNoiseConfig.parser
parser
Definition: CaloScaleNoiseConfig.py:75
AGDDPositioner.h
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
subtractionHandler.h
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
XercesParser.h
AGDDVolumeStore
Definition: AGDDVolumeStore.h:15
AGDDVolumeStore.h
IAGDDParser
Definition: IAGDDParser.h:15
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
subtractionHandler::ElementHandle
virtual void ElementHandle(AGDDController &c, xercesc::DOMNode *t) override
Definition: subtractionHandler.cxx:23
AGDDPositioner
Definition: AGDDPositioner.h:18
AGDDController
Definition: AGDDController.h:30
AGDDSectionStore
Definition: AGDDSectionStore.h:15
lumiFormat.i
int i
Definition: lumiFormat.py:85
res
std::pair< std::vector< unsigned int >, bool > res
Definition: JetGroupProductTest.cxx:14
AGDDSubtraction
Definition: AGDDSubtraction.h:13
subtractionHandler::subtractionHandler
subtractionHandler(const std::string &, AGDDController &c)
Definition: subtractionHandler.cxx:16
AGDDVolumeStore::Exist
bool Exist(std::string)
Definition: AGDDVolumeStore.cxx:20
XMLHandler::getAttributeAsString
std::string getAttributeAsString(AGDDController &c, const xercesc::DOMNode *t, const std::string &) const
Definition: XMLHandler.cxx:69
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
AGDDPositionerStore
Definition: AGDDPositionerStore.h:14
XMLHandler
Definition: XMLHandler.h:15
query_example.col
col
Definition: query_example.py:7
AGDDPositionerStore::GetPositioner
AGDDPositioner * GetPositioner(unsigned int i)
Definition: AGDDPositionerStore.cxx:18
AGDDPositioner::Volume
const std::string & Volume()
Definition: AGDDPositioner.cxx:21
AGDDSubtraction.h
AGDDPositionerStore::NrOfPositioners
int NrOfPositioners()
Definition: AGDDPositionerStore.h:19
AGDDPositionerStore.h
python.compressB64.c
def c
Definition: compressB64.py:93
XMLHandler::StopLoop
void StopLoop(bool)
Definition: XMLHandler.cxx:28