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

#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_NLPlate_HPG0Constraint.hxx>

#include <gp_XYZ.hxx>
#include <Standard_Boolean.hxx>
#include <NLPlate_HGPPConstraint.hxx>
#include <Standard_Integer.hxx>
class gp_XY;
class gp_XYZ;


//! define a PinPoint G0  Constraint  used to load a Non Linear
//! Plate
class NLPlate_HPG0Constraint : public NLPlate_HGPPConstraint
{

public:

  
  Standard_EXPORT NLPlate_HPG0Constraint(const gp_XY& UV, const gp_XYZ& Value);
  
  Standard_EXPORT virtual   void SetUVFreeSliding (const Standard_Boolean UVFree) ;
  
  Standard_EXPORT virtual   void SetIncrementalLoadAllowed (const Standard_Boolean ILA) ;
  
  Standard_EXPORT virtual   Standard_Boolean UVFreeSliding()  const;
  
  Standard_EXPORT virtual   Standard_Boolean IncrementalLoadAllowed()  const;
  
  Standard_EXPORT virtual   Standard_Integer ActiveOrder()  const;
  
  Standard_EXPORT virtual   Standard_Boolean IsG0()  const;
  
  Standard_EXPORT virtual  const  gp_XYZ& G0Target()  const;




  DEFINE_STANDARD_RTTI(NLPlate_HPG0Constraint)

protected:




private: 


  gp_XYZ myXYZTarget;
  Standard_Boolean UVIsFree;
  Standard_Boolean IncrementalLoadingAllowed;


};







#endif // _NLPlate_HPG0Constraint_HeaderFile
