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

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

#include <gp_Lin2d.hxx>
#include <Hatch_LineForm.hxx>
#include <Hatch_SequenceOfParameter.hxx>
#include <Standard_Real.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_Integer.hxx>
class Hatch_Hatcher;
class gp_Lin2d;


//! Stores a Line in the Hatcher. Represented by :
//!
//! * A Lin2d from gp, the geometry of the line.
//!
//! * Bounding parameters for the line.
//!
//! * A sorted List  of Parameters, the  intersections
//! on the line.
class Hatch_Line 
{
public:

  DEFINE_STANDARD_ALLOC

  
  Standard_EXPORT Hatch_Line();
  
  Standard_EXPORT Hatch_Line(const gp_Lin2d& L, const Hatch_LineForm T);
  
  //! Insert a new intersection in the sorted list.
  Standard_EXPORT   void AddIntersection (const Standard_Real Par1, const Standard_Boolean Start, const Standard_Integer Index, const Standard_Real Par2, const Standard_Real theToler) ;


friend class Hatch_Hatcher;


protected:





private:



  gp_Lin2d myLin;
  Hatch_LineForm myForm;
  Hatch_SequenceOfParameter myInters;


};







#endif // _Hatch_Line_HeaderFile
