7 #include "G4LogicalVolume.hh"
20 LogDebug(
"SimG4CoreGeometry") <<
" DDG4SensitiveConverter::upDate() starts" ;
23 for (
unsigned int i=0;
i<ddg4s.size();
i++) {
28 std::string sClassName =
getString(
"SensitiveDetector",part);
29 std::string sROUName =
getString(
"ReadOutName",part);
30 std::string fff = result->GetName();
31 if (sClassName !=
"NotFound") {
32 LogDebug(
"SimG4CoreGeometry") <<
" DDG4SensitiveConverter: Sensitive " << fff
33 <<
" Class Name " << sClassName <<
" ROU Name " << sROUName ;
34 fff = result->GetName();
35 catalog.
insert(sClassName,sROUName,fff);
43 std::vector<std::string>
temp;
46 std::vector<const DDsvalues_type *>::iterator it = result.begin();
48 for (; it != result.end(); ++it) {
54 if (temp.size() != 1) {
55 edm::LogError(
"SimG4CoreGeometry") <<
"DDG4SensitiveConverter - ERROR: I need 1 " << s <<
" tags" ;
56 throw SimG4Exception(
"DDG4SensitiveConverter: Problem with Region tags: one and only one is allowed");
void insert(std::string &, std::string &, std::string &)
std::vector< DDG4Dispatchable * > DDG4DispContainer
virtual ~DDG4SensitiveConverter()
const DDLogicalPart * getDDLogicalPart() const
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
std::vector< const DDsvalues_type * > specifics(void) const
returns the specific-data attached to the LogicalPart only (not to a DDExpandedNode) ...
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
std::string getString(const std::string &, const DDLogicalPart *)
const std::vector< std::string > & strings() const
a reference to the std::string-valued values stored in the given instance of DDValue ...
G4LogicalVolume * getG4LogicalVolume() const
SensitiveDetectorCatalog upDate(const DDG4DispContainer &ddg4s)