/// Constructor with arguments
 public CubicHermiteSplineControlPoint(T p, T before, T after)
 {
     position          = p;
     tangentBefore     = before;
     tangentAfter      = after;
     autoTangentBefore = CubicHermiteSplineAutoTangentMode.AT_NONE;
     autoTangentAfter  = CubicHermiteSplineAutoTangentMode.AT_NONE;
 }
        //
        //ORIGINAL LINE: inline CubicHermiteSpline2& addPoint(Ogre::float x, Ogre::float y, CubicHermiteSplineAutoTangentMode autoTangentMode = AT_CATMULL)
        public CubicHermiteSpline2 addPoint(float x, float y, CubicHermiteSplineAutoTangentMode autoTangentMode)
        {
            CubicHermiteSplineControlPoint <Vector2> cp = new CubicHermiteSplineControlPoint <Vector2>();

            cp.position          = new Vector2(x, y);
            cp.autoTangentBefore = autoTangentMode;
            cp.autoTangentAfter  = autoTangentMode;
            mPoints.push_back(cp);
            return(this);
        }
        //
        //ORIGINAL LINE: inline CubicHermiteSpline3& addPoint(const Ogre::Vector3& p, CubicHermiteSplineAutoTangentMode autoTangentMode = AT_CATMULL)
        public CubicHermiteSpline3 addPoint(Vector3 p, CubicHermiteSplineAutoTangentMode autoTangentMode)
        {
            ControlPoint cp = new CubicHermiteSplineControlPoint <Vector3>();

            cp.position          = p;
            cp.autoTangentBefore = autoTangentMode;
            cp.autoTangentAfter  = autoTangentMode;
            mPoints.push_back(cp);
            return(this);
        }
        //
        //ORIGINAL LINE: inline CubicHermiteSpline2& addPoint(const Ogre::Vector2& p, CubicHermiteSplineAutoTangentMode autoTangentMode = AT_CATMULL)
        public CubicHermiteSpline2 addPoint(Vector2 p, CubicHermiteSplineAutoTangentMode autoTangentMode)
        {
            CubicHermiteSplineControlPoint <Vector2> cp = new CubicHermiteSplineControlPoint <Vector2>();

            //
            //ORIGINAL LINE: cp.position = p;
            cp.position          = (p);
            cp.autoTangentBefore = autoTangentMode;
            cp.autoTangentAfter  = autoTangentMode;
            mPoints.push_back(cp);
            return(this);
        }