BWAPI
quorum/ExampleAIModule/BaseDefense_GoalHeaders.h
Go to the documentation of this file.
00001 #ifndef BDEF_GOALHEADERS_H
00002 #define BDEF_GOALHEADERS_H
00003 #include "GoalGeneratorBase.h"
00004 #include "GoalTypes.h"
00005 
00006 class BaseDefenseManagerAgent;
00007 
00008 // worker training goal
00009 class BaseDefense_BuildAirDefenseGoalGenerator : public GoalGeneratorBase {
00010 public:
00011         BaseDefense_BuildAirDefenseGoalGenerator(AgentPool* a, BaseDefenseManagerAgent* parent);
00012 
00013         // generic stuff
00014         virtual void inhibit();
00015         virtual bool instantiateGoal();
00016         virtual void updateDrives();
00017         virtual void initialize();
00018         virtual int getdrive();
00019         virtual int getthresh();
00020                 
00021 
00022 private:
00023 
00024         // generic stuff
00025         bool inhibited;
00026         AgentPool* agentPool;
00027         int drive;
00028         int thresh;
00029         int priority;
00030         BaseDefenseManagerAgent* parent;
00031         GoalDescriptor* goal;
00032         int temporalFactor;
00033         // implementation-specific stuff, if needed
00034 
00035 
00036 };
00037 
00038 
00039 
00040 class BaseDefense_BuildGroundDefenseGoalGenerator : public GoalGeneratorBase {
00041 public:
00042         BaseDefense_BuildGroundDefenseGoalGenerator(AgentPool* a, BaseDefenseManagerAgent* parent);
00043 
00044         // generic stuff
00045         virtual void inhibit();
00046         virtual bool instantiateGoal();
00047         virtual void updateDrives();
00048         virtual void initialize();
00049         virtual int getdrive();
00050         virtual int getthresh();
00051         
00052 
00053 
00054 private:
00055 
00056         // generic stuff
00057         bool inhibited;
00058         AgentPool* agentPool;
00059         int drive;
00060         int thresh;
00061         int priority;
00062         BaseDefenseManagerAgent* parent;
00063         GoalDescriptor* goal;
00064         int temporalFactor;
00065         // implementation-specific stuff, if needed
00066 
00067 
00068 };
00069 
00070 #endif
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Defines