joint_traj_pt_full_ex.h
Go to the documentation of this file.
1 /*
2  * Software License Agreement (BSD License)
3  *
4  * Copyright (c) 2014, Fraunhofer IPA
5  * Author: Thiago de Freitas
6  *
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions are met:
11  *
12  * * Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  * * Redistributions in binary form must reproduce the above copyright
15  * notice, this list of conditions and the following disclaimer in the
16  * documentation and/or other materials provided with the distribution.
17  * * Neither the name of the Fraunhofer IPA, nor the names
18  * of its contributors may be used to endorse or promote products derived
19  * from this software without specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
25  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31  * POSSIBILITY OF SUCH DAMAGE.
32  */
33 
34 #ifndef MOTOMAN_DRIVER_SIMPLE_MESSAGE_JOINT_TRAJ_PT_FULL_EX_H
35 #define MOTOMAN_DRIVER_SIMPLE_MESSAGE_JOINT_TRAJ_PT_FULL_EX_H
36 
37 #ifndef FLATHEADERS
43 #else
44 #include "joint_data.h" // NOLINT(build/include)
45 #include "simple_message.h" // NOLINT(build/include)
46 #include "simple_serialize.h" // NOLINT(build/include)
47 #include "shared_types.h" // NOLINT(build/include)
48 #endif
49 
50 #include<vector>
51 namespace industrial
52 {
53 namespace joint_traj_pt_full_ex
54 {
55 
57 {
59 {
61 };
62 }
64 
87 {
88 public:
95  JointTrajPtFullEx(void);
100  ~JointTrajPtFullEx(void);
101 
106  void init();
107 
112  void init(industrial::shared_types::shared_int num_groups,
114  std::vector<industrial::joint_traj_pt_full::JointTrajPtFull> joint_trajectory_points);
115 
123  {
124  this->num_groups_ = num_groups;
125  }
126 
135  {
136  return this->num_groups_;
137  }
138 
139  void setMultiJointTrajPtData(std::vector<industrial::joint_traj_pt_full::JointTrajPtFull> joint_trajectory_points)
140  {
141  this->joint_trajectory_points_ = joint_trajectory_points;
142  }
143 
150  {
151  this->sequence_ = sequence;
152  }
153 
161  {
162  return MAX_NUM_GROUPS;
163  }
164 
172  {
173  return this->sequence_;
174  }
175 
181  void copyFrom(JointTrajPtFullEx &src);
182 
188  bool operator==(JointTrajPtFullEx &rhs);
189 
190 
191  // Overrides - SimpleSerialize
192  bool load(industrial::byte_array::ByteArray *buffer);
193  bool unload(industrial::byte_array::ByteArray *buffer);
194  unsigned int byteLength()
195  {
197  MAX_NUM_GROUPS * (this->joint_traj_full_sample_.byteLength() - sizeof(industrial::shared_types::shared_int));
198  }
199 
200 private:
201  std::vector<industrial::joint_traj_pt_full::JointTrajPtFull> joint_trajectory_points_;
202 
212 
214 
215  static const industrial::shared_types::shared_int MAX_NUM_GROUPS = 4;
216 };
217 } // namespace joint_traj_pt_full_ex
218 } // namespace industrial
219 
220 #endif // MOTOMAN_DRIVER_SIMPLE_MESSAGE_JOINT_TRAJ_PT_FULL_EX_H
industrial::shared_types::shared_int valid_fields_from_message_
Class encapsulated joint trajectory point data. The point data serves as a waypoint along a trajector...
int sequence
void setSequence(industrial::shared_types::shared_int sequence)
Sets joint trajectory point sequence number.
industrial::shared_types::shared_int getSequence()
Returns joint trajectory point sequence number.
std::vector< industrial::joint_traj_pt_full::JointTrajPtFull > joint_trajectory_points_
industrial::shared_types::shared_int getMaxGroups()
Returns joint trajectory point maximum number of groups.
industrial::joint_traj_pt_full::JointTrajPtFull joint_traj_full_sample_
void setNumGroups(industrial::shared_types::shared_int num_groups)
Sets num_groups Number of groups attached to the controller.
void setMultiJointTrajPtData(std::vector< industrial::joint_traj_pt_full::JointTrajPtFull > joint_trajectory_points)
industrial::shared_types::shared_int getNumGroups()
Sets groups_number_ Numbers of group, this sets the amount of control groups connected to the control...
industrial::shared_types::shared_int num_groups_
number of groups for controllers that support multiple axis-groups
industrial::shared_types::shared_int sequence_
trajectory sequence number
bool operator==(const Rotation &a, const Rotation &b)


motoman_driver
Author(s): Jeremy Zoss (Southwest Research Institute), Ted Miller (MotoROS) (Yaskawa Motoman), Eric Marcil (MotoROS) (Yaskawa Motoman)
autogenerated on Sat May 8 2021 02:27:43