BWAPI
Public Member Functions | Private Attributes
IdleTask Class Reference

#include <IdleTask.h>

Inheritance diagram for IdleTask:
Inheritance graph
[legend]
Collaboration diagram for IdleTask:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 IdleTask (TaskType priority)
virtual int getEndTime () const
virtual int getEndTime (Unit unit) const
virtual int getPriority (Unit unit) const
virtual Position getStartLocation (Unit unit) const
virtual Position getEndLocation (Unit unit) const
virtual bool preUpdate ()
virtual bool update ()
virtual bool waitingForUnit (Unit unit) const
virtual void giveUnit (Unit unit)
virtual void returnUnit (Unit unit)
virtual bool morph (Unit unit, BWAPI::UnitType previousType)
virtual UnitGroup getFinishedUnits ()
virtual std::string getTaskName () const
virtual std::string getOutputName () const

Private Attributes

Unit mUnit

Detailed Description

Definition at line 7 of file IdleTask.h.


Constructor & Destructor Documentation

Definition at line 3 of file IdleTask.cpp.

: Task(priority)
{
}

Member Function Documentation

Position IdleTask::getEndLocation ( Unit  unit) const [virtual]

Implements Task.

Definition at line 23 of file IdleTask.cpp.

{
        return unit->getPosition();
}
int IdleTask::getEndTime ( ) const [virtual]

Implements Task.

Definition at line 8 of file IdleTask.cpp.

References Requirement::maxTime.

Referenced by getEndTime().

Here is the caller graph for this function:

int IdleTask::getEndTime ( Unit  unit) const [virtual]

Implements Task.

Definition at line 13 of file IdleTask.cpp.

References getEndTime().

{
        return getEndTime();
}

Here is the call graph for this function:

Implements Task.

Definition at line 63 of file IdleTask.cpp.

{
        assert(false);
        return UnitGroup();
}
virtual std::string IdleTask::getOutputName ( ) const [inline, virtual]

Implements Task.

Definition at line 30 of file IdleTask.h.

{ return ""; }
int IdleTask::getPriority ( Unit  unit) const [virtual]

Implements Task.

Definition at line 69 of file IdleTask.cpp.

{
        return 0;
}
Position IdleTask::getStartLocation ( Unit  unit) const [virtual]

Implements Task.

Definition at line 18 of file IdleTask.cpp.

{
        return unit->getPosition();
}
virtual std::string IdleTask::getTaskName ( ) const [inline, virtual]

Implements Task.

Definition at line 29 of file IdleTask.h.

{ return "Idle"; }
void IdleTask::giveUnit ( Unit  unit) [virtual]

Implements Task.

Definition at line 46 of file IdleTask.cpp.

References mUnit, and StaticUnits::nullunit.

{
        assert(mUnit == StaticUnits::nullunit);
        mUnit = unit;
}
bool IdleTask::morph ( Unit  unit,
BWAPI::UnitType  previousType 
) [virtual]

Implements Task.

Definition at line 58 of file IdleTask.cpp.

{
        return true;
}
bool IdleTask::preUpdate ( ) [virtual]

Implements Task.

Definition at line 28 of file IdleTask.cpp.

References Task::complete(), and mUnit.

{
        if(!mUnit)
                complete();

        return false;
}

Here is the call graph for this function:

void IdleTask::returnUnit ( Unit  unit) [virtual]

Implements Task.

Definition at line 52 of file IdleTask.cpp.

References mUnit, and StaticUnits::nullunit.

{
        assert(mUnit == unit);
        mUnit = StaticUnits::nullunit;
}
bool IdleTask::update ( ) [virtual]

Implements Task.

Definition at line 36 of file IdleTask.cpp.

References Task::hasEnded(), and mUnit.

{
        return hasEnded() && !mUnit;
}

Here is the call graph for this function:

bool IdleTask::waitingForUnit ( Unit  unit) const [virtual]

Implements Task.

Definition at line 41 of file IdleTask.cpp.

{
        return false;
}

Member Data Documentation

Unit IdleTask::mUnit [private]

Definition at line 33 of file IdleTask.h.

Referenced by giveUnit(), preUpdate(), returnUnit(), and update().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines