VR-Forces 4.0.4 Class Documentation
include/bhaveSim/vrfTaskAgent.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00006 #pragma once
00007 
00008 #include <bhaveSim/bhaveSimDefines.h>
00009 #include <bhaveSim/kynapsePSR.h>
00010 
00011 namespace BHAVE
00012 {
00013 
00014 class DtVrfEntityBot;
00015 
00018 class DT_DLL_bhaveSim DtVrfTaskAgent
00019 {  
00020 public:
00021 
00022    DtVrfTaskAgent(
00023       DtVrfEntityBot* bot,
00024       const char* task,
00025       const char* arg1,
00026       const char* arg2,
00027       const char* arg3,
00028       const char* arg4,
00029       const char* command);
00030 
00031    virtual ~DtVrfTaskAgent();
00032 
00034    virtual void Clear() = 0;
00035 
00037    virtual bool Think() = 0;
00038 
00040    virtual bool HasFinished() = 0;
00041 
00043    virtual void onTeleport() {};
00044 
00046    virtual void encodeTask(DtKynapsePSR*) {};
00047 
00049    virtual void decodeTask(DtKynapsePSR*) {};
00050 
00051    virtual const char* GetId() { return myId; }
00052    virtual const char* GetCommand() { return myCommand; }
00053 
00054 protected:
00055    char* myId;
00056    char* myCommand;
00057 
00058    DtVrfEntityBot* myBot;
00059 };
00060 
00061 template<class T>
00062 DtVrfTaskAgent* createDtVRFTaskAgent(DtVrfEntityBot* bot, const char* task,
00063                                      const char* arg1, const char* arg2,
00064                                      const char* arg3, const char* arg4,
00065                                      const char* command)
00066 {
00067    return new T(bot, task, arg1, arg2, arg3, arg4, command);
00068 }
00069 
00070 } //namespace BHAVE
00071 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)