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

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

#include <HLRAlgo_Intersection.hxx>
#include <HLRAlgo_Coincidence.hxx>
#include <TopAbs_Orientation.hxx>
class HLRAlgo_Intersection;
class HLRAlgo_Coincidence;



class HLRAlgo_Interference 
{
public:

  DEFINE_STANDARD_ALLOC

  
  Standard_EXPORT HLRAlgo_Interference();
  
  Standard_EXPORT HLRAlgo_Interference(const HLRAlgo_Intersection& Inters, const HLRAlgo_Coincidence& Bound, const TopAbs_Orientation Orient, const TopAbs_Orientation Trans, const TopAbs_Orientation BTrans);
  
      void Intersection (const HLRAlgo_Intersection& I) ;
  
      void Boundary (const HLRAlgo_Coincidence& B) ;
  
      void Orientation (const TopAbs_Orientation O) ;
  
      void Transition (const TopAbs_Orientation Tr) ;
  
      void BoundaryTransition (const TopAbs_Orientation BTr) ;
  
     const  HLRAlgo_Intersection& Intersection()  const;
  
      HLRAlgo_Intersection& ChangeIntersection() ;
  
     const  HLRAlgo_Coincidence& Boundary()  const;
  
      HLRAlgo_Coincidence& ChangeBoundary() ;
  
      TopAbs_Orientation Orientation()  const;
  
      TopAbs_Orientation Transition()  const;
  
      TopAbs_Orientation BoundaryTransition()  const;




protected:





private:



  HLRAlgo_Intersection myIntersection;
  HLRAlgo_Coincidence myBoundary;
  TopAbs_Orientation myOrientation;
  TopAbs_Orientation myTransition;
  TopAbs_Orientation myBTransition;


};

#define TheSubShape HLRAlgo_Intersection
#define TheSubShape_hxx <HLRAlgo_Intersection.hxx>
#define TheShape HLRAlgo_Coincidence
#define TheShape_hxx <HLRAlgo_Coincidence.hxx>
#define TopBas_Interference HLRAlgo_Interference
#define TopBas_Interference_hxx <HLRAlgo_Interference.hxx>

#include <TopBas_Interference.lxx>

#undef TheSubShape
#undef TheSubShape_hxx
#undef TheShape
#undef TheShape_hxx
#undef TopBas_Interference
#undef TopBas_Interference_hxx




#endif // _HLRAlgo_Interference_HeaderFile
