|  | 
|  | 
| These values should always be set in an assembly task.  | 
| std::string | maleID | 
|  | The name of the Body of the male object. 
 | 
|  | 
| std::string | femaleID | 
|  | The name of the Body of the female object. 
 | 
|  | 
| rw::math::Transform3D | femaleTmaleTarget | 
|  | The target relative location of the two objects when assembled (see maleTCP and femaleTCP). 
 | 
|  | 
| rw::core::Ptr< AssemblyControlStrategy > | strategy | 
|  | The control strategy to use for the assembly operation. 
 | 
|  | 
| rw::core::Ptr< AssemblyParameterization > | parameters | 
|  | Parameters for the constrol strategy (specific for the control strategy used) 
 | 
|  | 
|  | 
| If the femaleTmaleTarget is not specified with respect to the base frame of the bodies, please set the TCP frames of each body (an empty string means that the base frame is used).  | 
| std::string | maleTCP | 
|  | (optional) The name of the TCP of the male object. 
 | 
|  | 
| std::string | femaleTCP | 
|  | (optional) The name of the TCP of the female object. 
 | 
|  | 
|  | 
| Information about the context of the task, and additional information.  | 
| std::string | taskID | 
|  | (optional) An identifier for this specific task - please make it as unique and descriptive as possible. 
 | 
|  | 
| std::string | workcellName | 
|  | (optional) The name of the workcell this task is intended for. 
 | 
|  | 
| std::string | generator | 
|  | (optional) An identifier for the generator that created the task. 
 | 
|  | 
| std::string | date | 
|  | (optional) The date and time for creation of the task. 
 | 
|  | 
| std::string | author | 
|  | (optional) The name of the author. 
 | 
|  | 
|  | 
| Data required for simulation purposes (at least one of the objects must have a controller).  | 
| std::string | malePoseController | 
|  | The controller that is used to control the pose of the male object (supported is SerialDeviceController). 
 | 
|  | 
| std::string | femalePoseController | 
|  | The controller that is used to control the pose of the female object (supported is SerialDeviceController). 
 | 
|  | 
| std::string | maleFTSensor | 
|  | The Force/Torque sensor that is used to control the pose of the male object. 
 | 
|  | 
| std::string | femaleFTSensor | 
|  | The Force/Torque sensor that is used to control the pose of the female object. 
 | 
|  | 
| std::vector< std::string > | maleFlexFrames | 
|  | If there is flexibility between the control frame and the peg, the intermediate flexibility base frames can be set here for the male manipulator. 
 | 
|  | 
| std::vector< std::string > | femaleFlexFrames | 
|  | If there is flexibility between the control frame and the peg, the intermediate flexibility base frames can be set here for the female manipulator. 
 | 
|  | 
| std::vector< std::string > | bodyContactSensors | 
|  | Add contacts to the result for the given BodyContactSensors. 
 | 
|  | 
Specification of a AssemblyTask. 
Assembly task is a generic description that covers all tasks where two objects are to be assembled. This can for instance be Peg in Hole or screwing operations.
The class supports serialization through the CartesianTask format. For deserialization an AssemblyRegistry should be provided when loading the AssemblyTask. This is required if user specifies its own AssemblyControlStrategy.