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

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

#include <Handle_Geom2d_AxisPlacement.hxx>
#include <Handle_PGeom2d_AxisPlacement.hxx>
#include <Handle_Geom2d_BSplineCurve.hxx>
#include <Handle_PGeom2d_BSplineCurve.hxx>
#include <Handle_Geom2d_BezierCurve.hxx>
#include <Handle_PGeom2d_BezierCurve.hxx>
#include <Handle_Geom2d_CartesianPoint.hxx>
#include <Handle_PGeom2d_CartesianPoint.hxx>
#include <Handle_Geom2d_Circle.hxx>
#include <Handle_PGeom2d_Circle.hxx>
#include <Handle_Geom2d_Curve.hxx>
#include <Handle_PGeom2d_Curve.hxx>
#include <Handle_Geom2d_Direction.hxx>
#include <Handle_PGeom2d_Direction.hxx>
#include <Handle_Geom2d_Ellipse.hxx>
#include <Handle_PGeom2d_Ellipse.hxx>
#include <Handle_Geom2d_Hyperbola.hxx>
#include <Handle_PGeom2d_Hyperbola.hxx>
#include <Handle_Geom2d_Line.hxx>
#include <Handle_PGeom2d_Line.hxx>
#include <Handle_Geom2d_OffsetCurve.hxx>
#include <Handle_PGeom2d_OffsetCurve.hxx>
#include <Handle_Geom2d_Parabola.hxx>
#include <Handle_PGeom2d_Parabola.hxx>
#include <Handle_Geom2d_Point.hxx>
#include <Handle_PGeom2d_Point.hxx>
#include <Handle_Geom2d_Transformation.hxx>
#include <Handle_PGeom2d_Transformation.hxx>
#include <Handle_Geom2d_TrimmedCurve.hxx>
#include <Handle_PGeom2d_TrimmedCurve.hxx>
#include <Handle_Geom2d_VectorWithMagnitude.hxx>
#include <Handle_PGeom2d_VectorWithMagnitude.hxx>
class Geom2d_AxisPlacement;
class PGeom2d_AxisPlacement;
class Geom2d_BSplineCurve;
class PGeom2d_BSplineCurve;
class Geom2d_BezierCurve;
class PGeom2d_BezierCurve;
class Geom2d_CartesianPoint;
class PGeom2d_CartesianPoint;
class Geom2d_Circle;
class PGeom2d_Circle;
class Geom2d_Curve;
class PGeom2d_Curve;
class Geom2d_Direction;
class PGeom2d_Direction;
class Geom2d_Ellipse;
class PGeom2d_Ellipse;
class Geom2d_Hyperbola;
class PGeom2d_Hyperbola;
class Geom2d_Line;
class PGeom2d_Line;
class Geom2d_OffsetCurve;
class PGeom2d_OffsetCurve;
class Geom2d_Parabola;
class PGeom2d_Parabola;
class Geom2d_Point;
class PGeom2d_Point;
class Geom2d_Transformation;
class PGeom2d_Transformation;
class Geom2d_TrimmedCurve;
class PGeom2d_TrimmedCurve;
class Geom2d_VectorWithMagnitude;
class PGeom2d_VectorWithMagnitude;


//! This  package   provides   methods  to   translate
//! transient   objects   from  Geom2d   to persistent
//! objects from PGeom2d and vice-versa. No track from
//! previous translation is kept.
//!
//! Data is not shared:
//! -   between transient and persistent objects,
//! or
//! -   between two successive translations of the same object.
class MgtGeom2d 
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_AxisPlacement) Translate (const Handle(PGeom2d_AxisPlacement)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_AxisPlacement) Translate (const Handle(Geom2d_AxisPlacement)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_BSplineCurve) Translate (const Handle(PGeom2d_BSplineCurve)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_BSplineCurve) Translate (const Handle(Geom2d_BSplineCurve)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_BezierCurve) Translate (const Handle(PGeom2d_BezierCurve)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_BezierCurve) Translate (const Handle(Geom2d_BezierCurve)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_CartesianPoint) Translate (const Handle(PGeom2d_CartesianPoint)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_CartesianPoint) Translate (const Handle(Geom2d_CartesianPoint)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Circle) Translate (const Handle(PGeom2d_Circle)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Circle) Translate (const Handle(Geom2d_Circle)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  //! Raises Null Object if PObj has no mapping
  Standard_EXPORT static   Handle(Geom2d_Curve) Translate (const Handle(PGeom2d_Curve)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  //! Raises NullObject if TObj has no mapping
  Standard_EXPORT static   Handle(PGeom2d_Curve) Translate (const Handle(Geom2d_Curve)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Direction) Translate (const Handle(PGeom2d_Direction)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Direction) Translate (const Handle(Geom2d_Direction)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Ellipse) Translate (const Handle(PGeom2d_Ellipse)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Ellipse) Translate (const Handle(Geom2d_Ellipse)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Hyperbola) Translate (const Handle(PGeom2d_Hyperbola)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Hyperbola) Translate (const Handle(Geom2d_Hyperbola)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Line) Translate (const Handle(PGeom2d_Line)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Line) Translate (const Handle(Geom2d_Line)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_OffsetCurve) Translate (const Handle(PGeom2d_OffsetCurve)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_OffsetCurve) Translate (const Handle(Geom2d_OffsetCurve)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Parabola) Translate (const Handle(PGeom2d_Parabola)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Parabola) Translate (const Handle(Geom2d_Parabola)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Point) Translate (const Handle(PGeom2d_Point)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Point) Translate (const Handle(Geom2d_Point)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_Transformation) Translate (const Handle(PGeom2d_Transformation)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_Transformation) Translate (const Handle(Geom2d_Transformation)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_TrimmedCurve) Translate (const Handle(PGeom2d_TrimmedCurve)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_TrimmedCurve) Translate (const Handle(Geom2d_TrimmedCurve)& TObj) ;
  
  //! Translate <PObj> to its Transient equivalent from Geom2d.
  Standard_EXPORT static   Handle(Geom2d_VectorWithMagnitude) Translate (const Handle(PGeom2d_VectorWithMagnitude)& PObj) ;
  
  //! Translate <TObj> to its Persistent equivalent from PGeom2d.
  Standard_EXPORT static   Handle(PGeom2d_VectorWithMagnitude) Translate (const Handle(Geom2d_VectorWithMagnitude)& TObj) ;




protected:





private:





};







#endif // _MgtGeom2d_HeaderFile
