Class base_block_pickup
Defined in File base_block_pickup.hpp
Inheritance Relationships
Base Type
public rer::client< base_block_pickup >
Class Documentation
-
class base_block_pickup : public rer::client<base_block_pickup>
Base class for the simulation event fired whenever a robot picks up a block. Has “base” in the name, because it does not contain the necessary functions for updating the FSM attached to a controller, which is necessary for it to be reused as-is, hence it is therefore a base class.
Public Functions
-
base_block_pickup(const base_block_pickup&) = delete
-
base_block_pickup(crepr::base_block3D *block, const rtypes::type_uuid &robot_id, const rtypes::timestep &t)
- Parameters:
block – Non-owning reference to the block to be picked up; block is owned by arena map.
robot_id – ID of the robot doing the pickup.
t – The current timestep.
-
virtual ~base_block_pickup(void) = default
-
inline crepr::base_block3D *block(void) const
-
base_block_pickup &operator=(const base_block_pickup&) = delete
-
inline const rtypes::type_uuid &robot_id(void) const
-
void visit(controller::block_carrying_controller &controller)
Update the controller with the block it has just picked up, along with updating necessary block metadata to reflect the fact that it is now carried by a robot.
-
base_block_pickup(const base_block_pickup&) = delete