armarx::view_selection::gaze_targets Namespace Reference

Namespaces

namespace  dto
 

Classes

class  GazeTarget
 Business Object (BO) class of GazeTarget. More...
 
class  GazeTargetStatus
 Business Object (BO) class of GazeTargetStatus: the lifecycle of one gaze target request, as observed and published by the gaze scheduler. More...
 
class  TargetPriority
 The Priority of a GazeTarget. More...
 

Enumerations

enum class  AttentionType { TaskDriven = 2 , StimulusDriven = 1 , RandomEvent = 0 }
 Describes the type of attention. More...
 
enum class  TargetStatus {
  Requested , Scheduled , Reached , Preempted ,
  Released , Aborted
}
 The lifecycle state of a gaze target, as observed by the gaze scheduler. More...
 

Functions

void fromAron (const arondto::AttentionType &dto, AttentionType &bo)
 
void fromAron (const arondto::GazeTarget &dto, GazeTarget &bo)
 
void fromAron (const arondto::GazeTargetStatus &dto, GazeTargetStatus &bo)
 
void fromAron (const arondto::TargetPriority &dto, TargetPriority &bo)
 
void fromAron (const arondto::TargetStatus &dto, TargetStatus &bo)
 
void fromIce (const dto::AttentionType::AttentionTypeEnum &dto, AttentionType &bo)
 
void fromIce (const dto::GazeTargetPtr &dto, GazeTarget &bo)
 
void fromIce (const dto::TargetPriority &dto, TargetPriority &bo)
 
bool isTerminal (const TargetStatus status)
 Whether the status is terminal, i.e. the target has left the scheduler's queue for good.
 
::std::ostream & operator<< (::std::ostream &os, const GazeTarget &target)
 
::std::ostream & operator<< (::std::ostream &os, const GazeTargetStatus &status)
 
std::ostream & operator<< (std::ostream &os, const TargetPriority &prio)
 
void toAron (arondto::AttentionType &dto, const AttentionType &bo)
 
void toAron (arondto::GazeTarget &dto, const GazeTarget &bo)
 
void toAron (arondto::GazeTargetStatus &dto, const GazeTargetStatus &bo)
 
void toAron (arondto::TargetPriority &dto, const TargetPriority &bo)
 
void toAron (arondto::TargetStatus &dto, const TargetStatus &bo)
 
void toIce (dto::AttentionType::AttentionTypeEnum &dto, const AttentionType &bo)
 
void toIce (dto::GazeTargetPtr &dto, const GazeTarget &bo)
 
void toIce (dto::TargetPriority &dto, const TargetPriority &bo)
 

Variables

const simox::meta::EnumNames< AttentionType > AttentionTypeNames
 
const simox::meta::EnumNames< TargetStatus > TargetStatusNames
 

Enumeration Type Documentation

◆ AttentionType

enum class AttentionType
strong

Describes the type of attention.

Enumerator
TaskDriven 

Task-Driven attention has highest priority.

StimulusDriven 

Stimulus-Driven attention is executed when there is no Task-Driven GazeTarget.

RandomEvent 

Random Targets with lowest priority.

◆ TargetStatus

enum class TargetStatus
strong

The lifecycle state of a gaze target, as observed by the gaze scheduler.

Requested/Scheduled/Reached/Preempted are transient, Released/Aborted are terminal.

Released and Aborted are the success/failure split: a target that had been reached before it left the queue ends as Released – the caller got what it asked for, even though another target owns the head now. A target bumped before the gaze ever settled ends as Aborted.

Enumerator
Requested 

admitted to the scheduler's queue, waiting for scheduling

Scheduled 

submitted to the low-level controller

Reached 

the gaze residual settled below the threshold

Preempted 

lost the active slot but stays in the queue and may be scheduled again

Released 

left the queue having been reached (duration elapsed, or superseded afterwards)

Aborted 

left the queue without ever being reached, or the target is out of reach

Function Documentation

◆ fromAron() [1/5]

void fromAron ( const arondto::AttentionType & dto,
AttentionType & bo )

◆ fromAron() [2/5]

void fromAron ( const arondto::GazeTarget & dto,
GazeTarget & bo )

◆ fromAron() [3/5]

void fromAron ( const arondto::GazeTargetStatus & dto,
GazeTargetStatus & bo )

◆ fromAron() [4/5]

void fromAron ( const arondto::TargetPriority & dto,
TargetPriority & bo )

◆ fromAron() [5/5]

void fromAron ( const arondto::TargetStatus & dto,
TargetStatus & bo )

◆ fromIce() [1/3]

void fromIce ( const dto::AttentionType::AttentionTypeEnum & dto,
AttentionType & bo )

◆ fromIce() [2/3]

void fromIce ( const dto::GazeTargetPtr & dto,
GazeTarget & bo )

◆ fromIce() [3/3]

void fromIce ( const dto::TargetPriority & dto,
TargetPriority & bo )

◆ isTerminal()

bool isTerminal ( const TargetStatus status)
inline

Whether the status is terminal, i.e. the target has left the scheduler's queue for good.

◆ operator<<() [1/3]

std::ostream & operator<< ( ::std::ostream & os,
const GazeTarget & target )

◆ operator<<() [2/3]

std::ostream & operator<< ( ::std::ostream & os,
const GazeTargetStatus & status )

◆ operator<<() [3/3]

std::ostream & operator<< ( std::ostream & os,
const TargetPriority & prio )

◆ toAron() [1/5]

void toAron ( arondto::AttentionType & dto,
const AttentionType & bo )

◆ toAron() [2/5]

void toAron ( arondto::GazeTarget & dto,
const GazeTarget & bo )

◆ toAron() [3/5]

void toAron ( arondto::GazeTargetStatus & dto,
const GazeTargetStatus & bo )

◆ toAron() [4/5]

void toAron ( arondto::TargetPriority & dto,
const TargetPriority & bo )

◆ toAron() [5/5]

void toAron ( arondto::TargetStatus & dto,
const TargetStatus & bo )

◆ toIce() [1/3]

void toIce ( dto::AttentionType::AttentionTypeEnum & dto,
const AttentionType & bo )

◆ toIce() [2/3]

void toIce ( dto::GazeTargetPtr & dto,
const GazeTarget & bo )

◆ toIce() [3/3]

void toIce ( dto::TargetPriority & dto,
const TargetPriority & bo )

Variable Documentation

◆ AttentionTypeNames

const simox::meta::EnumNames< gaze_targets::AttentionType > AttentionTypeNames
extern
Initial value:
{
{AttentionType::TaskDriven, "TaskDriven"},
{AttentionType::StimulusDriven, "StimulusDriven"},
{AttentionType::RandomEvent, "RandomEvent"},
}
@ RandomEvent
Random Targets with lowest priority.
Definition AttentionType.h:40
@ StimulusDriven
Stimulus-Driven attention is executed when there is no Task-Driven GazeTarget.
Definition AttentionType.h:38
@ TaskDriven
Task-Driven attention has highest priority.
Definition AttentionType.h:35

◆ TargetStatusNames

const simox::meta::EnumNames<TargetStatus> TargetStatusNames
inline
Initial value:
{
{TargetStatus::Requested, "Requested"},
{TargetStatus::Scheduled, "Scheduled"},
{TargetStatus::Reached, "Reached"},
{TargetStatus::Preempted, "Preempted"},
{TargetStatus::Released, "Released"},
{TargetStatus::Aborted, "Aborted"}}
@ Scheduled
submitted to the low-level controller
Definition TargetStatus.h:43
@ Aborted
left the queue without ever being reached, or the target is out of reach
Definition TargetStatus.h:51
@ Reached
the gaze residual settled below the threshold
Definition TargetStatus.h:45
@ Released
left the queue having been reached (duration elapsed, or superseded afterwards)
Definition TargetStatus.h:49
@ Preempted
lost the active slot but stays in the queue and may be scheduled again
Definition TargetStatus.h:47
@ Requested
admitted to the scheduler's queue, waiting for scheduling
Definition TargetStatus.h:41