test-PMComplex.C

00001 /*!@file BeoSub/test-PMComplex.C find pipe     */
00002 // //////////////////////////////////////////////////////////////////// //
00003 // The iLab Neuromorphic Vision C++ Toolkit - Copyright (C) 2001 by the //
00004 // University of Southern California (USC) and the iLab at USC.         //
00005 // See http://iLab.usc.edu for information about this project.          //
00006 // //////////////////////////////////////////////////////////////////// //
00007 // Major portions of the iLab Neuromorphic Vision Toolkit are protected //
00008 // under the U.S. patent ``Computation of Intrinsic Perceptual Saliency //
00009 // in Visual Environments, and Applications'' by Christof Koch and      //
00010 // Laurent Itti, California Institute of Technology, 2001 (patent       //
00011 // pending; application number 09/912,225 filed July 23, 2001; see      //
00012 // http://pair.uspto.gov/cgi-bin/final/home.pl for current status).     //
00013 // //////////////////////////////////////////////////////////////////// //
00014 // This file is part of the iLab Neuromorphic Vision C++ Toolkit.       //
00015 //                                                                      //
00016 // The iLab Neuromorphic Vision C++ Toolkit is free software; you can   //
00017 // redistribute it and/or modify it under the terms of the GNU General  //
00018 // Public License as published by the Free Software Foundation; either  //
00019 // version 2 of the License, or (at your option) any later version.     //
00020 //                                                                      //
00021 // The iLab Neuromorphic Vision C++ Toolkit is distributed in the hope  //
00022 // that it will be useful, but WITHOUT ANY WARRANTY; without even the   //
00023 // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      //
00024 // PURPOSE.  See the GNU General Public License for more details.       //
00025 //                                                                      //
00026 // You should have received a copy of the GNU General Public License    //
00027 // along with the iLab Neuromorphic Vision C++ Toolkit; if not, write   //
00028 // to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,   //
00029 // Boston, MA 02111-1307 USA.                                           //
00030 // //////////////////////////////////////////////////////////////////// //
00031 //
00032 // Primary maintainer for this file: Michael Montalbo <montalbo@usc.edu>
00033 // $HeadURL: svn://isvn.usc.edu/software/invt/trunk/saliency/src/BeoSub/BeeBrain/test-PMComplex.C $
00034 // $Id: test-PMComplex.C 8623 2007-07-25 17:57:51Z rjpeters $
00035 
00036 #include "Component/ModelManager.H"
00037 #include "BeoSub/BeeBrain/PreMotorComplex.H"
00038 #include "BeoSub/BeeBrain/ComplexMovement.H"
00039 
00040 int main(int argc, char* argv[]) {
00041 
00042   ModelManager manager("premotor complex test");
00043 
00044   nub::soft_ref<SubController> motorControl(new SubController(manager, "Controller", "PID"));
00045   manager.addSubComponent(motorControl);
00046 
00047   manager.exportOptions(MC_RECURSE);
00048 
00049   manager.start();
00050 
00051   PreMotorComplex test(motorControl, "premotorcomplex");
00052 
00053   rutz::shared_ptr<ComplexMovement> move_test;
00054   move_test.reset(new ComplexMovement());
00055   //move_test.functionList.push_back(NULL);
00056   //move_test.functionList[0] = &PreMotorComplex::turn;
00057 
00058 
00059   SensorInput a;
00060   a.data = 5.0;
00061   a.angle = *(new Angle(55));
00062 
00063   VisionInput b;
00064   b.position.reset(new Point3D(5, 10, 15));
00065   b.angle.reset(new Angle(55));
00066 
00067   //move_test->addOnceMove(FORWARD, 5.0, Angle(33.0));
00068   move_test->addMove(&PreMotorComplex::turn, ONCE, Angle(120));
00069   move_test->addMove(&PreMotorComplex::vis_turn, ONCE, b.position);
00070 
00071   //move_test->addOnceMove(&PreMotorComplex::forward, 5.0, Angle(120));
00072 
00073   //move_test.addRecursiveMove(&PreMotorComplex::forward, dummy4, ang);
00074   //printf("happens at adding function pointer18\n");
00075 
00076   //move_test->addOnceMove(DIVE, b.position, b.angle);
00077   //move_test.addOnceMove(&PreMotorComplex::vturn, NULL, b.angle);
00078   //move_test->addRecursiveMove(&PreMotorComplex::vturn, b.position, b.angle);
00079 
00080   test.run(move_test);
00081   //ang.setVal(-35.5);
00082   //c.position.x = 5555;
00083   //c.position.y = 5555;
00084   //c.position.z = 5555;
00085   //test.run(&move_test);
00086   printf("we are done\n");
00087 
00088 
00089   return 0;
00090 
00091 }
Generated on Sun May 8 08:40:19 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3