//## begin module%1.4%.codegen_version preserve=yes
//   Read the documentation to learn more about C++ code generator
//   versioning.
//## end module%1.4%.codegen_version

//## begin module%3D86D3B8001E.cm preserve=no
//	  %X% %Q% %Z% %W%
//## end module%3D86D3B8001E.cm

//## begin module%3D86D3B8001E.cp preserve=no
//## end module%3D86D3B8001E.cp

//## Module: Avoider%3D86D3B8001E; Pseudo Package specification
//## Source file: C:\Program Files\Rational\Rose\C++\source\Avoider.h

#ifndef Avoider_h
#define Avoider_h 1

//## begin module%3D86D3B8001E.additionalIncludes preserve=no
//## end module%3D86D3B8001E.additionalIncludes

//## begin module%3D86D3B8001E.includes preserve=yes
//## end module%3D86D3B8001E.includes

// Behavior
#include "Behavior.h"
//## begin module%3D86D3B8001E.additionalDeclarations preserve=yes
//## end module%3D86D3B8001E.additionalDeclarations


//## begin Avoider%3D86D3B8001E.preface preserve=yes
//## end Avoider%3D86D3B8001E.preface

//## Class: Avoider%3D86D3B8001E
//	/**
//	Implements the avoiding behavior of the robot. The robot
//	tries to back up and then turns away from the obstacle.
//	@author Jia L. Du
//	 */
//## Category: <Top Level>
//## Persistence: Transient
//## Cardinality/Multiplicity: n



class Avoider : public Behavior  //## Inherits: <unnamed>%3D9ACA3500A0
{
  //## begin Avoider%3D86D3B8001E.initialDeclarations preserve=yes
  //## end Avoider%3D86D3B8001E.initialDeclarations

  public:
    //## Constructors (generated)
      Avoider();



    //## Other Operations (specified)
      //## Operation: activate%3D9291E40168
      //	/**
      //	Activates this behavior
      //	@return A result code indicating why this behavior
      //	terminated. Not used at the moment as there is only
      //  one possible result code
      //	 */
      int activate ();

    // Additional Public Declarations
      //## begin Avoider%3D86D3B8001E.public preserve=yes
      //## end Avoider%3D86D3B8001E.public

  protected:
    // Additional Protected Declarations
      //## begin Avoider%3D86D3B8001E.protected preserve=yes
      //## end Avoider%3D86D3B8001E.protected

  private:
    // Additional Private Declarations
      //## begin Avoider%3D86D3B8001E.private preserve=yes
      //## end Avoider%3D86D3B8001E.private

  private: //## implementation
    // Additional Implementation Declarations
      //## begin Avoider%3D86D3B8001E.implementation preserve=yes
      //## end Avoider%3D86D3B8001E.implementation

};

//## begin Avoider%3D86D3B8001E.postscript preserve=yes
//## end Avoider%3D86D3B8001E.postscript

// Class Avoider 

//## begin module%3D86D3B8001E.epilog preserve=yes
//## end module%3D86D3B8001E.epilog


#endif