00001 /*************************************************************************** 00002 * Copyright (C) 2008 by Neuronics AG * 00003 * support@neuronics.ch * 00004 ***************************************************************************/ 00005 00006 #ifndef _KATANAKINEMATICSDECISIONALGORITHMS_H 00007 #define _KATANAKINEMATICSDECISIONALGORITHMS_H 00008 00009 #include <vector> 00010 00011 namespace AnaGuess { 00012 00013 00014 struct KinematicsDefaultEncMinAlgorithm { 00015 typedef std::vector<int> encoders; 00016 typedef encoders::const_iterator c_iter; 00017 typedef std::vector< encoders >::const_iterator t_iter; 00018 00019 t_iter operator() ( t_iter targetEnc_begin, t_iter targetEnc_end, c_iter currentEnc_begin, c_iter currentEnc_end ); 00020 }; 00021 00022 00023 struct KinematicsDefaultRadMinAlgorithm { 00024 typedef std::vector<double> radians; 00025 typedef radians::const_iterator c_iter; 00026 typedef std::vector< radians >::const_iterator t_iter; 00027 00028 t_iter operator() ( t_iter targetRad_begin, t_iter targetRad_end, c_iter currentRad_begin, c_iter currentRad_end ); 00029 }; 00030 00031 00032 } // namespace 00033 00034 #endif