C:/cmcintos/defOrgs/examples/vesselCrawler/source/Ctrl_VesselCrawler.cxx

00001 #ifndef Ctrl_VesselCrawler_txx
00002 #define Ctrl_VesselCrawler_txx
00003 #include "Ctrl_VesselCrawler.h"
00004 namespace mial{
00005 
00006         /*template<class Type,int nDims,class CrawlerPhysType>
00007         Ctrl_VesselCrawler<Type,nDims, CrawlerPhysType>::Ctrl_VesselCrawler()
00008         {
00009                 growing.vesse
00010         }*/
00011         template<class Type,int nDims,class CrawlerPhysType>
00012         bool Ctrl_VesselCrawler<Type,nDims, CrawlerPhysType>::decideNextBehavior()
00013         {
00014                 //Make sure the current behavior is finished.
00015                 if( behaviorToRun == NULL || (behaviorToRun!=NULL && behaviorToRun->isFinished()) )
00016                 {
00017                         if(!terminate())
00018                         {
00019                                 if(bifurcation())
00020                                 {
00021                                         //Spawn!
00022                                         behaviorToRun = findBehavior("Beh_Spawning");
00023                                         return true;
00024                                 }
00025                                 else
00026                                 {
00027                                         //Decide where to grow
00028                                         //Set the grow location
00029                                         //if haven't fit yet, fit.
00030                                         behaviorToRun = &growing;//findBehavior("Beh_Growing");
00031                                         Beh_GrowingType::behaviorIn * input = new Beh_GrowingType::behaviorIn;
00032                                         //Beh_GrowingType::behaviorIn::Pointer input = Beh_GrowingType::behaviorIn:New();
00033                 
00034                                         
00035                                         input->newAxis.fill(5);
00036                                         
00037                                         input->locXYZ.fill(5);
00038                                         input->radius =5;
00039                                         input->growDistance = 3;
00040                                         input->vesselGeom = geomLayer;
00041 
00042                                         behaviorToRunStruct = input;
00043                                         
00044                                         //behaviorToRun = findBehavior("Beh_Fitting");
00045                                         return true;
00046                                 }
00047                         }
00048                         else
00049                                 return false;//Indicate that this organism is finished
00050                 }
00051                 else
00052                         return true;//Indicate that the organism is still running
00053         }
00054         template<class Type,int nDims,class CrawlerPhysType>
00055         bool Ctrl_VesselCrawler<Type,nDims, CrawlerPhysType>::terminate()
00056         {
00057                 return false;
00058         }
00059         template<class Type,int nDims,class CrawlerPhysType>
00060         bool Ctrl_VesselCrawler<Type,nDims, CrawlerPhysType>::bifurcation()
00061         {
00062                 return false;
00063         }
00064 }//end mail
00065 #endif

Generated on Wed Jul 19 13:05:16 2006 for IDO by  doxygen 1.4.7