@@ -52,26 +52,116 @@ template <typename TPoint>
5252void SpeedFunctionPathInformation<TPoint>
5353::SetStartPoint ( const PointType & start )
5454{
55- m_Information[1 ] = start;
55+ m_Information[1 ] = PtoPVec ( start) ;
5656}
5757
5858
5959template <typename TPoint>
6060void SpeedFunctionPathInformation<TPoint>
6161::SetEndPoint ( const PointType & end )
6262{
63- m_Information[0 ] = end;
63+ m_Information[0 ] = PtoPVec ( end ) ;
6464}
6565
6666
6767template <typename TPoint>
6868void SpeedFunctionPathInformation<TPoint>
6969::AddWayPoint ( const PointType & way )
70+ {
71+ m_Information.push_back ( PtoPVec (way) );
72+ m_Front++;
73+ }
74+
75+ template <typename TPoint>
76+ void SpeedFunctionPathInformation<TPoint>
77+ ::SetCurrent ( const PointType & newcurrent )
78+ {
79+ m_Information[m_Front] = PtoPVec (newcurrent);
80+ }
81+
82+ template <typename TPoint>
83+ void SpeedFunctionPathInformation<TPoint>
84+ ::Advance ( void )
85+ {
86+ m_Front--;
87+ }
88+
89+ template <typename TPoint>
90+ void SpeedFunctionPathInformation<TPoint>
91+ ::SetStartPoint ( const PointsContainerType & start )
92+ {
93+ m_Information[1 ] = start;
94+ }
95+
96+
97+ template <typename TPoint>
98+ void SpeedFunctionPathInformation<TPoint>
99+ ::SetEndPoint ( const PointsContainerType & end )
100+ {
101+ m_Information[0 ] = end;
102+ }
103+
104+
105+ template <typename TPoint>
106+ void SpeedFunctionPathInformation<TPoint>
107+ ::AddWayPoint ( const PointsContainerType & way )
70108{
71109 m_Information.push_back ( way );
72110 m_Front++;
73111}
74112
113+ template <typename TPoint>
114+ void SpeedFunctionPathInformation<TPoint>
115+ ::SetCurrent ( const PointsContainerType & newcurrent )
116+ {
117+ m_Information[m_Front] = newcurrent;
118+ }
119+
120+ template <typename TPoint>
121+ void SpeedFunctionPathInformation<TPoint>
122+ ::SetPrevious ( const PointsContainerType & newprevious )
123+ {
124+ SizeValueType F;
125+ if ( m_Front == m_Information.size ()-1 )
126+ {
127+ F=0 ;
128+ }
129+ else
130+ {
131+ F = m_Front+1 ;
132+ }
133+ m_Information[F] = newprevious;
134+ }
135+ template <typename TPoint>
136+ void SpeedFunctionPathInformation<TPoint>
137+ ::SetNext ( const PointsContainerType & newnext )
138+ {
139+ SizeValueType F;
140+ if (m_Front <= 1 )
141+ {
142+ F=1 ;
143+ }
144+ else
145+ {
146+ F = m_Front - 1 ;
147+ }
148+ m_Information[F] = newnext;
149+ }
150+
151+ template <typename TPoint>
152+ void SpeedFunctionPathInformation<TPoint>
153+ ::SetPrevious ( const PointType & newprevious )
154+ {
155+ SetPrevious (PtoPVec (newprevious));
156+ }
157+
158+ template <typename TPoint>
159+ void SpeedFunctionPathInformation<TPoint>
160+ ::SetNext ( const PointType & newnext )
161+ {
162+ SetNext (PtoPVec (newnext));
163+ }
164+
75165
76166template <typename TPoint>
77167unsigned int SpeedFunctionPathInformation<TPoint>
@@ -82,7 +172,7 @@ unsigned int SpeedFunctionPathInformation<TPoint>
82172
83173
84174template <typename TPoint>
85- const typename SpeedFunctionPathInformation<TPoint>::PointType &
175+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
86176SpeedFunctionPathInformation<TPoint>
87177::GetStartPoint ( ) const
88178{
@@ -91,7 +181,7 @@ SpeedFunctionPathInformation<TPoint>
91181
92182
93183template <typename TPoint>
94- const typename SpeedFunctionPathInformation<TPoint>::PointType &
184+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
95185SpeedFunctionPathInformation<TPoint>
96186::GetEndPoint ( ) const
97187{
@@ -100,7 +190,7 @@ SpeedFunctionPathInformation<TPoint>
100190
101191
102192template <typename TPoint>
103- const typename SpeedFunctionPathInformation<TPoint>::PointType &
193+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
104194SpeedFunctionPathInformation<TPoint>
105195::GetWayPoint ( SizeValueType i ) const
106196{
@@ -118,7 +208,7 @@ bool SpeedFunctionPathInformation<TPoint>
118208
119209
120210template <typename TPoint>
121- const typename SpeedFunctionPathInformation<TPoint>::PointType &
211+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
122212SpeedFunctionPathInformation<TPoint>
123213::GetCurrentFrontAndAdvance ( )
124214{
@@ -127,7 +217,7 @@ SpeedFunctionPathInformation<TPoint>
127217
128218
129219template <typename TPoint>
130- const typename SpeedFunctionPathInformation<TPoint>::PointType &
220+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
131221SpeedFunctionPathInformation<TPoint>
132222::PeekCurrentFront ( ) const
133223{
@@ -136,7 +226,7 @@ SpeedFunctionPathInformation<TPoint>
136226
137227
138228template <typename TPoint>
139- const typename SpeedFunctionPathInformation<TPoint>::PointType &
229+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
140230SpeedFunctionPathInformation<TPoint>
141231::PeekNextFront ( ) const
142232{
@@ -152,7 +242,7 @@ SpeedFunctionPathInformation<TPoint>
152242
153243
154244template <typename TPoint>
155- const typename SpeedFunctionPathInformation<TPoint>::PointType &
245+ const typename SpeedFunctionPathInformation<TPoint>::PointsContainerType &
156246SpeedFunctionPathInformation<TPoint>
157247::PeekPreviousFront ( ) const
158248{
0 commit comments