#include <EGraphPlayerIF.h>
Public Member Functions | |
PursuitAgent (Identity ID, PlayerClient *client, Position2dProxy *posProxy, LaserProxy *laserProxy) | |
~PursuitAgent () | |
void | clientRead () |
Identity | getID () |
BehaviorTypes | getBehavior () |
Grid | getLSR () |
LRR | getLRR () |
Frontier | getFrontier () |
int | getNumFrontierSegments () |
int | getTotalFrontierCells () |
void | setFrontier (Frontier frontier, bool bForce=false) |
Path | getPath () |
Pose | getPose () |
Position | getPosition () |
Pose | getViewpoint () |
Scan | getScan () |
ExplorationParams | getExplParams () |
double | getSensorRange () |
double | getCoverRange () |
double | getCoverFieldOfView () |
double | getWidth () |
int | getLSRSize () |
vector< Cell * > | getRaster (DubInt iCell1, DubInt iCell2) |
double | getLSRResolution () |
Pose | getLSRPose () |
LSRBound | getLSRBound () |
Cell * | getCell (DubInt indices) |
Cell * | getCell (Position pos) |
Cell * | getCell (int i) |
Position | getCellPosition (DubInt indices) |
int | getNumFollowers () |
Position | getFollowerPosition () |
void | setToExpand (Path path, bool bClearPrevFrontier, AgentVector neighbors, bool bDoExpand=true) |
void | setToGuard (AgentVector neighbors) |
void | setToFollow (AgentVector neighbors) |
void | setToWander (AgentVector neighbors) |
void | setToNoBehavior () |
void | goTo (Pose pose) |
void | addFollower (PursuitAgent *newFollower, bool bMove=true) |
void | doCurrentBehavior (AgentVector neighbors) |
bool | isLeader () |
bool | isReady () |
bool | isWaitingForAnyAgent () |
bool | isWaitingForAgent (int iID) |
void | clearWaitingForAgent () |
bool | isTraveling () |
void | drawBoundary (Graphics2dProxy &gp) |
void | drawFrontier (Graphics2dProxy &gp) |
void | drawLSR (Graphics2dProxy &gp, bool bOnlyLSR) |
bool | canDetectTargetPosition (Position targetPos) |
Protected Member Functions | |
void | Expand (AgentVector neighbors) |
void | Guard (AgentVector neighbors) |
void | processFrontier (AgentVector neighbors) |
void | Wander (AgentVector neighbors) |
void | recordLSR () |
bool | isCellCovered (Pose viewPoint, DubInt iCell, bool bSilent=true) |
Pose | pickBestViewPoint (int *iNumViewPoints, bool bDebugDisplay=false) |
void | updateFrontier (AgentVector neighbors, bool bDebugDisplay=false) |
void | getNeighborFrontiers (AgentVector neighbors, Pose &curPose, vector< Frontier > &ourNeighborFrontiers, vector< Frontier > &updatedNeighborFrontiers, vector< DubInt > &neighborObstacleEndpoints, vector< DubInt > &neighborObstacleBeginpoints) |
void | classifyOurFrontier (AgentVector neighbors, Pose &curPose, vector< Frontier > &ourNeighborFrontiers, vector< DubInt > &neighborObstacleEndpoints, vector< DubInt > &neighborObstacleBeginpoints, bool bDebugDisplay) |
void | updateNeighborFrontiers (AgentVector neighbors, Pose &curPose, vector< Frontier > &updatedNeighborFrontiers) |
void | postProcessOurFrontier (vector< Frontier > &ourNeighborFrontiers, Pose &curPose, bool bDebugDisplay) |
Protected Attributes | |
Identity | m_iID |
PlayerClient * | m_pClient |
Position2dProxy * | m_pPosProxy |
LaserProxy * | m_pLaserProxy |
BehaviorTypes | m_eBehavior |
Frontier | m_frontier |
Frontier | m_freeArcs |
Frontier | m_prevFrontier |
Grid | m_LSR |
Grid | m_prevLSR |
bool | m_bFrontierInitialized |
Path | m_path |
PursuitAgent * | m_pWaitForAgent |
AgentVector | m_followers |
PursuitAgent::PursuitAgent | ( | Identity | ID, | |
PlayerClient * | client, | |||
Position2dProxy * | posProxy, | |||
LaserProxy * | laserProxy | |||
) |
PursuitAgent::~PursuitAgent | ( | ) |
void PursuitAgent::Expand | ( | AgentVector | neighbors | ) | [protected] |
void PursuitAgent::Guard | ( | AgentVector | neighbors | ) | [protected] |
void PursuitAgent::processFrontier | ( | AgentVector | neighbors | ) | [protected] |
void PursuitAgent::Wander | ( | AgentVector | neighbors | ) | [protected] |
void PursuitAgent::recordLSR | ( | ) | [protected] |
Pose PursuitAgent::pickBestViewPoint | ( | int * | iNumViewPoints, | |
bool | bDebugDisplay = false | |||
) | [protected] |
void PursuitAgent::updateFrontier | ( | AgentVector | neighbors, | |
bool | bDebugDisplay = false | |||
) | [protected] |
void PursuitAgent::getNeighborFrontiers | ( | AgentVector | neighbors, | |
Pose & | curPose, | |||
vector< Frontier > & | ourNeighborFrontiers, | |||
vector< Frontier > & | updatedNeighborFrontiers, | |||
vector< DubInt > & | neighborObstacleEndpoints, | |||
vector< DubInt > & | neighborObstacleBeginpoints | |||
) | [protected] |
void PursuitAgent::classifyOurFrontier | ( | AgentVector | neighbors, | |
Pose & | curPose, | |||
vector< Frontier > & | ourNeighborFrontiers, | |||
vector< DubInt > & | neighborObstacleEndpoints, | |||
vector< DubInt > & | neighborObstacleBeginpoints, | |||
bool | bDebugDisplay | |||
) | [protected] |
void PursuitAgent::updateNeighborFrontiers | ( | AgentVector | neighbors, | |
Pose & | curPose, | |||
vector< Frontier > & | updatedNeighborFrontiers | |||
) | [protected] |
void PursuitAgent::postProcessOurFrontier | ( | vector< Frontier > & | ourNeighborFrontiers, | |
Pose & | curPose, | |||
bool | bDebugDisplay | |||
) | [protected] |
void PursuitAgent::clientRead | ( | ) |
Identity PursuitAgent::getID | ( | ) | [inline] |
BehaviorTypes PursuitAgent::getBehavior | ( | ) | [inline] |
Grid PursuitAgent::getLSR | ( | ) | [inline] |
LRR PursuitAgent::getLRR | ( | ) | [inline] |
Frontier PursuitAgent::getFrontier | ( | ) | [inline] |
int PursuitAgent::getNumFrontierSegments | ( | ) | [inline] |
int PursuitAgent::getTotalFrontierCells | ( | ) |
void PursuitAgent::setFrontier | ( | Frontier | frontier, | |
bool | bForce = false | |||
) |
Path PursuitAgent::getPath | ( | ) | [inline] |
Pose PursuitAgent::getPose | ( | void | ) | [inline] |
Position PursuitAgent::getPosition | ( | void | ) | [inline] |
Pose PursuitAgent::getViewpoint | ( | ) |
Scan PursuitAgent::getScan | ( | ) |
ExplorationParams PursuitAgent::getExplParams | ( | ) |
double PursuitAgent::getSensorRange | ( | ) | [inline] |
double PursuitAgent::getCoverRange | ( | ) |
double PursuitAgent::getCoverFieldOfView | ( | ) |
double PursuitAgent::getWidth | ( | ) | [inline] |
int PursuitAgent::getLSRSize | ( | ) | [inline] |
double PursuitAgent::getLSRResolution | ( | ) | [inline] |
Pose PursuitAgent::getLSRPose | ( | ) |
LSRBound PursuitAgent::getLSRBound | ( | ) | [inline] |
Cell* PursuitAgent::getCell | ( | int | i | ) | [inline] |
int PursuitAgent::getNumFollowers | ( | ) | [inline] |
Position PursuitAgent::getFollowerPosition | ( | ) |
void PursuitAgent::setToExpand | ( | Path | path, | |
bool | bClearPrevFrontier, | |||
AgentVector | neighbors, | |||
bool | bDoExpand = true | |||
) |
void PursuitAgent::setToGuard | ( | AgentVector | neighbors | ) |
void PursuitAgent::setToFollow | ( | AgentVector | neighbors | ) |
void PursuitAgent::setToWander | ( | AgentVector | neighbors | ) |
void PursuitAgent::setToNoBehavior | ( | ) |
void PursuitAgent::goTo | ( | Pose | pose | ) |
void PursuitAgent::addFollower | ( | PursuitAgent * | newFollower, | |
bool | bMove = true | |||
) |
void PursuitAgent::doCurrentBehavior | ( | AgentVector | neighbors | ) |
bool PursuitAgent::isLeader | ( | ) |
bool PursuitAgent::isReady | ( | ) |
bool PursuitAgent::isWaitingForAnyAgent | ( | ) |
bool PursuitAgent::isWaitingForAgent | ( | int | iID | ) |
void PursuitAgent::clearWaitingForAgent | ( | ) |
bool PursuitAgent::isTraveling | ( | ) |
void PursuitAgent::drawBoundary | ( | Graphics2dProxy & | gp | ) |
void PursuitAgent::drawFrontier | ( | Graphics2dProxy & | gp | ) |
void PursuitAgent::drawLSR | ( | Graphics2dProxy & | gp, | |
bool | bOnlyLSR | |||
) |
bool PursuitAgent::canDetectTargetPosition | ( | Position | targetPos | ) |
Identity PursuitAgent::m_iID [protected] |
PlayerClient* PursuitAgent::m_pClient [protected] |
Position2dProxy* PursuitAgent::m_pPosProxy [protected] |
LaserProxy* PursuitAgent::m_pLaserProxy [protected] |
BehaviorTypes PursuitAgent::m_eBehavior [protected] |
Frontier PursuitAgent::m_frontier [protected] |
Frontier PursuitAgent::m_freeArcs [protected] |
Frontier PursuitAgent::m_prevFrontier [protected] |
Grid PursuitAgent::m_LSR [protected] |
Grid PursuitAgent::m_prevLSR [protected] |
bool PursuitAgent::m_bFrontierInitialized [protected] |
Path PursuitAgent::m_path [protected] |
PursuitAgent* PursuitAgent::m_pWaitForAgent [protected] |
AgentVector PursuitAgent::m_followers [protected] |