// 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 _TopOpeBRepDS_CurveIterator_HeaderFile
#define _TopOpeBRepDS_CurveIterator_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>

#include <TopOpeBRepDS_InterferenceIterator.hxx>
#include <Standard_Boolean.hxx>
#include <Handle_TopOpeBRepDS_Interference.hxx>
#include <Standard_Integer.hxx>
#include <TopAbs_Orientation.hxx>
#include <TopAbs_State.hxx>
#include <Handle_Geom2d_Curve.hxx>
class TopOpeBRepDS_ListOfInterference;
class TopOpeBRepDS_Interference;
class Geom2d_Curve;



class TopOpeBRepDS_CurveIterator  : public TopOpeBRepDS_InterferenceIterator
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Creates an  iterator on the  curves on surface
  //! described by the interferences in <L>.
  Standard_EXPORT TopOpeBRepDS_CurveIterator(const TopOpeBRepDS_ListOfInterference& L);
  
  //! Returns  True if the Interference <I>  has a
  //! GeometryType() TopOpeBRepDS_CURVE
  //! returns False else.
  Standard_EXPORT virtual   Standard_Boolean MatchInterference (const Handle(TopOpeBRepDS_Interference)& I)  const;
  
  //! Index of the curve in the data structure.
  Standard_EXPORT   Standard_Integer Current()  const;
  
  Standard_EXPORT   TopAbs_Orientation Orientation (const TopAbs_State S)  const;
  
  Standard_EXPORT  const  Handle(Geom2d_Curve)& PCurve()  const;




protected:





private:





};







#endif // _TopOpeBRepDS_CurveIterator_HeaderFile
