14 : material_(m), solid_(s), cat_(c), weight_(0), specifics_(0), hasDDValue_(1,
false)
32 if ( ! (s.first && s.second) ) {
34 std::cerr <<
"LogicalPart::addSpecific error pointer 0 " 35 << s.first <<
"," << s.second << std::endl;
39 for(
const auto& it : *s.second ) {
40 unsigned int id = it.first;
54 unsigned int id = v.
id();
63 std::vector<std::pair<const DDPartSelection*, const DDsvalues_type* > >::iterator it =
70 std::vector<const DDsvalues_type*>
result;
80 if (ps.size()==1 && ps[0].selectionType_==
ddanylogp) {
81 result.push_back(it.second);
94 std::vector<const DDsvalues_type *> unmerged;
96 if (unmerged.size()==1) {
97 merged = *(unmerged[0]);
99 else if (unmerged.size()>1) {
100 for(
const auto& it : unmerged ) {
std::vector< std::pair< const DDPartSelection *, const DDsvalues_type * > > specifics_
DDMaterial is used to define and access material information.
DDEnums::Category category() const
void removeSpecifics(const std::pair< const DDPartSelection *, const DDsvalues_type * > &)
void addSpecifics(const std::pair< const DDPartSelection *, const DDsvalues_type * > &)
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
unsigned int id(void) const
returns the ID of the DDValue
A DDSolid represents the shape of a part.
std::vector< bool > hasDDValue_
const DDMaterial & material() const
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
std::maps an index to a DDValue. The index corresponds to the index assigned to the name of the std::...
void stream(std::ostream &)
std::vector< const DDsvalues_type * > specifics() const
bool hasDDValue(const DDValue &) const
void mergedSpecificsV(DDsvalues_type &res) const
const DDSolid & solid() const
DDsvalues_type mergedSpecifics() const
void specificsV(std::vector< const DDsvalues_type * > &result) const
def merge(dictlist, TELL=False)