00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #pragma once
00014
00015 #ifndef Trajectory_h__
00016 #define Trajectory_h__
00017
00018
00019 #include "BaseTrajectory.h"
00020 #include "DefaultTrajectory.h"
00021
00022 #include <memory>
00023
00024
00025
00027
00028 template <typename my_alg_type>
00029 class Trajectory :
00030 public BaseTrajectory<my_alg_type>
00031 {
00032 public:
00034 Trajectory(void) : pImpl(std::tr1::shared_ptr< const DefaultTrajectory<my_alg_type> > (new DefaultTrajectory<my_alg_type>))
00035 {
00036 };
00037
00039 Trajectory(std::tr1::shared_ptr < const BaseTrajectory<my_alg_type> > pimpl1) : pImpl(pimpl1)
00040 {
00041 };
00042
00044 ~Trajectory(void)
00045 {
00046 };
00047
00049 AbstractSolutionPoint Value(const SCA t, const unsigned int Resolution=11) const
00050 {
00051 return pImpl->Value(t, Resolution);
00052 };
00053
00054 private:
00056 std::tr1::shared_ptr < const BaseTrajectory<my_alg_type> > pImpl;
00057
00058 };
00059
00060 #endif // Trajectory_h__
00061