43 #ifndef G4UEXTRUDEDSOLID_hh 
   44 #define G4UEXTRUDEDSOLID_hh 
   48 #if ( defined(G4GEOM_USE_USOLIDS) || defined(G4GEOM_USE_PARTIAL_USOLIDS) ) 
   50 #include "UExtrudedSolid.hh" 
   54 class G4UExtrudedSolid : 
public G4USolid 
 
   61         : fZ(z), fOffset(offset), fScale(scale) {}
 
   62       ZSection(
const UExtrudedSolid::ZSection& zs)
 
   63         : fZ(zs.fZ), fOffset(
G4TwoVector(zs.fOffset.
x,zs.fOffset.y)),
 
   73     G4UExtrudedSolid(
const G4String&        pName,
 
   74                    std::vector<G4TwoVector> polygon,
 
   75                    std::vector<ZSection>    zsections);
 
   78     G4UExtrudedSolid(
const G4String&        pName,
 
   79                    std::vector<G4TwoVector> polygon,
 
   87     inline UExtrudedSolid* GetShape() 
const;
 
   89     G4int GetNofVertices() 
const;
 
   91     std::vector<G4TwoVector> GetPolygon() 
const;
 
   92     G4int GetNofZSections() 
const;
 
   93     ZSection GetZSection(
G4int index) 
const;
 
   94     std::vector<ZSection> GetZSections() 
const;
 
  100     G4UExtrudedSolid(__void__&);
 
  105     G4UExtrudedSolid( 
const G4UExtrudedSolid& source );
 
  106     G4UExtrudedSolid &operator=(
const G4UExtrudedSolid& source);
 
  122 inline UExtrudedSolid* G4UExtrudedSolid::GetShape()
 const 
  124   return (UExtrudedSolid*) fShape;
 
  129   return "G4ExtrudedSolid";
 
  132 #endif  // G4GEOM_USE_USOLIDS