robokudo.annotators.query

Classes

QueryAnnotator

This Annotator spawns an Action Server that listens for Queries from external ROS nodes.

QueryReply

A test class which simply generates an empty Query Answer to check

GenerateQueryResult

This class reads in the annotations done by the previous Annotators

QueryActionServer

Module Contents

class robokudo.annotators.query.QueryAnnotator(name='QueryAnnotator', feedback_instance=robokudo_msgs.msg.QueryFeedback(), result_instance=robokudo_msgs.msg.QueryResult(), action_type=robokudo_msgs.msg.QueryAction, action_name='~query')

Bases: robokudo.annotators.core.BaseAnnotator

This Annotator spawns an Action Server that listens for Queries from external ROS nodes. It will then annotate the CAS and put the Query into CASViews.QUERY.

The Annotator and the Actionserver are type-agnostic, which means that you are not bound to a specific type of query. You can pass these from your AE to this QueryAnnotator.

Look up the QueryReply Class to see how to the result is generated.

query_service = None
feedback_instance
result_instance
action_type
action_name = '~query'
initialise()

Called when first tick is received and anytime status is not running after.

update()

Called every time the behavior is ticked.

class robokudo.annotators.query.QueryReply(name='QueryReply')

Bases: robokudo.annotators.core.BaseAnnotator

A test class which simply generates an empty Query Answer to check if the Action server can reply properly. Create a single, empty Object Designator that will be send to the caller.

initialise()

Called when first tick is received and anytime status is not running after.

update()

Called every time the behavior is ticked.

class robokudo.annotators.query.GenerateQueryResult(name='GenerateQueryResult')

Bases: robokudo.annotators.core.BaseAnnotator

This class reads in the annotations done by the previous Annotators and generates Object Designators from them. These will be placed into the Blackboard so that a running Query Action Server can pick the information up and send it as a query reply.

update()

Called every time the behavior is ticked.

class robokudo.annotators.query.QueryActionServer(name, feedback_instance=robokudo_msgs.msg.QueryFeedback(), result_instance=robokudo_msgs.msg.QueryResult(), action_type=robokudo_msgs.msg.QueryAction)

Bases: object

_action_name
_as
new_query = None
query = None
preempt_message_printed = False
_feedback
_result
reset_bookkeeping_vars()
send_result(result)
is_active()
start_processing()

Tell the ActionServer that we are now starting the execution and it can start the monitoring/response process.

execute_cb(goal)