// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _PGeom_TrimmedCurve_HeaderFile
#define _PGeom_TrimmedCurve_HeaderFile

#include <Standard_Macro.hxx>
#include <Standard_DefineHandle.hxx>
#include <Standard.hxx>
#include <Handle_PGeom_TrimmedCurve.hxx>

#include <Standard_Real.hxx>
#include <Handle_PGeom_Curve.hxx>
#include <PGeom_BoundedCurve.hxx>
class PGeom_Curve;


class PGeom_TrimmedCurve : public PGeom_BoundedCurve
{

public:

  
  //! Creates a TrimmedCurve with default values.
  Standard_EXPORT PGeom_TrimmedCurve();
  
  //! Creates a TrimmedCurve with these field values.
  Standard_EXPORT PGeom_TrimmedCurve(const Handle(PGeom_Curve)& aBasisCurve, const Standard_Real aFirstU, const Standard_Real aLastU);
  
  //! Set the value of the field firstU with <aFirstU>.
  Standard_EXPORT   void FirstU (const Standard_Real aFirstU) ;
  
  //! Returns the value of the field firstU.
  Standard_EXPORT   Standard_Real FirstU()  const;
  
  //! Set the value of the field lastU with <aLastU>.
  Standard_EXPORT   void LastU (const Standard_Real aLastU) ;
  
  //! Returns the value of the field lastU.
  Standard_EXPORT   Standard_Real LastU()  const;
  
  //! Set the value of the field basisCurve with <aBasisCurve>.
  //! This curve can be a trimmed curve.
  Standard_EXPORT   void BasisCurve (const Handle(PGeom_Curve)& aBasisCurve) ;
  
  //! Returns the value of the field basisCurve.
  //! This curve can be a trimmed curve.
  Standard_EXPORT   Handle(PGeom_Curve) BasisCurve()  const;

PGeom_TrimmedCurve(const Storage_stCONSTclCOM& a) : PGeom_BoundedCurve(a)
{
  
}
    Handle(PGeom_Curve) _CSFDB_GetPGeom_TrimmedCurvebasisCurve() const { return basisCurve; }
    void _CSFDB_SetPGeom_TrimmedCurvebasisCurve(const Handle(PGeom_Curve)& p) { basisCurve = p; }
    Standard_Real _CSFDB_GetPGeom_TrimmedCurvefirstU() const { return firstU; }
    void _CSFDB_SetPGeom_TrimmedCurvefirstU(const Standard_Real p) { firstU = p; }
    Standard_Real _CSFDB_GetPGeom_TrimmedCurvelastU() const { return lastU; }
    void _CSFDB_SetPGeom_TrimmedCurvelastU(const Standard_Real p) { lastU = p; }



  DEFINE_STANDARD_RTTI(PGeom_TrimmedCurve)

protected:




private: 


  Handle(PGeom_Curve) basisCurve;
  Standard_Real firstU;
  Standard_Real lastU;


};







#endif // _PGeom_TrimmedCurve_HeaderFile
