59     std::ostringstream message;
    60     message << 
"Invalid setup." << 
G4endl    61             << 
"NULL pointer specified as mother for volume: " << pName;
    62     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
    66   if (pLogical == pMotherLogical)
    68     std::ostringstream message;
    69     message << 
"Invalid setup." << 
G4endl    70             << 
"Cannot place a volume inside itself! Volume: " << pName;
    71     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
    94     std::ostringstream message;
    95     message << 
"Invalid setup." << 
G4endl    96             << 
"NULL pointer specified as mother! Volume: " << pName;
    97     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
   101   if (pLogical == pMotherLogical)
   103     std::ostringstream message;
   104     message << 
"Invalid setup." << 
G4endl   105             << 
"Cannot place a volume inside itself! Volume: " << pName;
   106     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
   127     std::ostringstream message;
   128     message << 
"Invalid setup." << 
G4endl   129             << 
"NULL pointer specified as mother! Volume: " + pName;
   130     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
   134   if (pLogical == pMotherLogical)
   136     std::ostringstream message;
   137     message << 
"Invalid setup." << 
G4endl   138             << 
"Cannot place a volume inside itself! Volume: "+ pName;
   139     G4Exception(
"G4PVDivision::G4PVDivision()", 
"GeomDiv0002",
   167     G4Exception(
"G4PVDivision::CheckAndSetParameters()", 
"GeomDiv0002",
   181     G4Exception(
"G4PVDivision::CheckAndSetParameters()", 
"GeomDiv0002",
   216       G4Exception(
"G4PVDivision::CheckAndSetParameters()", 
"GeomDiv0002",
   228   if( msolType != dsolType && ( msolType != 
"G4Trd" || dsolType != 
"G4Trap" ) )
   230     std::ostringstream message;
   231     message << 
"Incorrect solid type for division of volume "   233             << 
"It is: " << msolType
   234             << 
", while it should be: " << dsolType << 
"!";
   235     G4Exception(
"G4PVDivision::CheckAndSetParameters()",
   322   if (mSolidType == 
"G4ReflectedSolid")
   330   if( mSolidType == 
"G4Box" )
   336                                              offset, mSolid, divType );
   340                                              offset, mSolid, divType );
   344                                              offset, mSolid, divType );
   351   else if( mSolidType == 
"G4Tubs" )
   357                                                 offset, mSolid, divType );
   361                                                 offset, mSolid, divType );
   365                                               offset, mSolid, divType );
   372   else if( mSolidType == 
"G4Cons" )
   378                                                 offset, mSolid, divType );
   382                                                 offset, mSolid, divType );
   386                                               offset, mSolid, divType );
   393   else if( mSolidType == 
"G4Trd" )
   399                                              offset, mSolid, divType );
   403                                              offset, mSolid, divType );
   407                                              offset, mSolid, divType );
   414   else if( mSolidType == 
"G4Para" )
   420                                              offset, mSolid, divType );
   424                                              offset, mSolid, divType );
   428                                              offset, mSolid, divType );
   438   else if( mSolidType == 
"G4Polycone" )
   444                                                     offset, mSolid, divType );
   448                                                     offset, mSolid, divType );
   452                                                   offset, mSolid, divType );
   459   else if( mSolidType == 
"G4Polyhedra" )
   465                                                     offset, mSolid, divType );
   469                                                     offset, mSolid, divType );
   473                                                   offset, mSolid, divType );
   482     std::ostringstream message;
   483     message << 
"Solid type " << mSolidType << 
" not supported!"  << 
G4endl   484             << 
"Divisions for " << mSolidType << 
" are not implemented.";
   485     G4Exception(
"G4PVDivision::SetParameterisation()", 
"GeomDiv0001",
   510       error += 
"Radial3D.";
   518   G4Exception(
"G4PVDivision::ErrorInAxis()", 
"GeomDiv0002",
 
G4bool IsParameterised() const
 
CLHEP::HepRotation G4RotationMatrix
 
G4bool IsRegularStructure() const
 
G4double GetWidth() const
 
G4PVDivision(const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMother, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset)
 
virtual G4GeometryType GetEntityType() const =0
 
void SetRotation(G4RotationMatrix *)
 
virtual G4int GetCopyNo() const
 
virtual void SetCopyNo(G4int CopyNo)
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
void SetParameterisation(G4LogicalVolume *motherLogical, const EAxis pAxis, const G4int nReplicas, const G4double width, const G4double offset, DivisionType divType)
 
G4int GetRegularStructureId() const
 
G4VDivisionParameterisation * fparam
 
const G4String & GetName() const
 
void ErrorInAxis(EAxis axis, G4VSolid *solid)
 
virtual G4bool IsMany() const
 
virtual G4VPVParameterisation * GetParameterisation() const
 
virtual void GetReplicationData(EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const
 
static PROLOG_HANDLER error
 
void SetMotherLogical(G4LogicalVolume *pMother)
 
void CheckAndSetParameters(const EAxis pAxis, const G4int nDivs, const G4double width, const G4double offset, DivisionType divType, const G4LogicalVolume *pMotherLogical)
 
void AddDaughter(G4VPhysicalVolume *p)
 
G4LogicalVolume * GetLogicalVolume() const
 
virtual G4bool IsReplicated() const
 
G4VSolid * GetSolid() const
 
EAxis GetDivisionAxis() const