VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/singleTaskControllerComponent.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00008 
00010 
00011 #pragma once
00012 
00013 #include "vrfobjcore/taskCtlrCmpnt.h"
00014 
00019 class DT_DLL_vrfobjcore DtSingleTaskControllerComponent : public DtTaskControllerComponent
00020 {
00021 
00022 public:
00023 
00029    DtSingleTaskControllerComponent(const DtString& name, DtVrfObject* owner, 
00030       DtSimManager* simManager, 
00031       DtComponentDescriptor* compDesc = 0,
00032       DtReaderWriterRegistry* parentRegistry = 0);
00033 
00035    virtual ~DtSingleTaskControllerComponent();
00036 
00041    virtual void postTick();
00042 
00051    virtual bool beginProcessingTask(const DtTaskMessage& task, 
00052       DtSimTaskStatePtr taskState);
00053 
00056    virtual void taskNotify(const DtSimTask & task);
00057 
00058 
00063    virtual void taskComplete(bool success = true);
00064 
00068    virtual void clearTask();
00069 
00073    virtual int sendSubtask(DtSimTask& task);
00074 
00078    virtual void clearSubtask(int subtaskId);
00079 
00083    virtual void addPendingSubtaskId(int subtaskId);
00084 
00089    virtual bool findPendingSubtaskId(int subtaskId);
00090 
00095    virtual void removePendingSubtaskId(int subtaskId);
00096 
00099    virtual void removeAllPendingSubtaskIds();
00100 
00102    virtual std::vector<int> currentPendingSubstaskIds() const;
00103 
00106    //virtual DtTaskMessage* pendingSubtask(int subtaskId, DtString& controller) const;
00107 
00109    virtual void clearCurrentTaskMessage();
00110 
00112    virtual DtTaskMessage * currentTaskMessage() const;
00113 
00119    virtual DtSimTaskStatePtr currentTaskState() const;
00120 
00130    virtual bool decideToGiveUpTask() const;
00131 
00135    virtual void giveUpTask();
00136 
00138    virtual bool taskActive(int taskId) const;
00139 
00141    virtual bool clearTopLevelTasks();
00142 
00144    virtual void clearConflictingTopLevelTasks(int conflictId);
00145 
00147    virtual void clearTasksByType(int taskType);
00148 
00150    virtual void clearTaskById(int taskId);
00151 
00153    virtual std::list<DtTaskMessage*> currentTaskMessages() const;
00154 
00156    virtual DtTaskWithTaskStateListPtr topLevelTasks() const;
00157 
00158 protected:
00161       virtual void clearPendingSubtasks();
00162 
00166       virtual void clearSubtasksByType(int taskType);
00167 };

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)