43 #if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) ) 
   53     G4USolid(
const G4String& pName, VUSolid* shape);
 
   93                                    const G4bool calcNorm = 
false,
 
  148     virtual std::ostream& 
StreamInfo(std::ostream& os) 
const;
 
  170     G4USolid(
const G4USolid& rhs);
 
  171     G4USolid& 
operator=(
const G4USolid& rhs);
 
  174     VUSolid* GetSolid()
 const 
  182     mutable G4bool fRebuildPolyhedron;
 
  186 #endif  // G4GEOM_USE_USOLIDS 
virtual G4Polyhedron * GetPolyhedron() const 
 
virtual G4bool CalculateExtent(const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pMin, G4double &pMax) const =0
 
virtual void ComputeDimensions(G4VPVParameterisation *p, const G4int n, const G4VPhysicalVolume *pRep)
 
virtual G4double GetCubicVolume()
 
virtual G4GeometryType GetEntityType() const =0
 
virtual std::ostream & StreamInfo(std::ostream &os) const =0
 
virtual EInside Inside(const G4ThreeVector &p) const =0
 
virtual G4ThreeVector SurfaceNormal(const G4ThreeVector &p) const =0
 
virtual G4double DistanceToIn(const G4ThreeVector &p, const G4ThreeVector &v) const =0
 
virtual G4Polyhedron * CreatePolyhedron() const 
 
virtual void DescribeYourselfTo(G4VGraphicsScene &scene) const =0
 
G4bool operator==(const G4VSolid &s) const 
 
virtual G4VisExtent GetExtent() const 
 
virtual G4ThreeVector GetPointOnSurface() const 
 
G4VSolid & operator=(const G4VSolid &rhs)
 
virtual G4VSolid * Clone() const 
 
virtual G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const =0
 
virtual G4double GetSurfaceArea()