www.gusucode.com > ros 工具箱 matlab源码程序 > ros/+robotics/+ros/+msggen/+wireless_msgs/Connection.m
classdef Connection < robotics.ros.Message %Connection MATLAB implementation of wireless_msgs/Connection % This class was automatically generated by % robotics.ros.msg.internal.gen.MessageClassGenerator. % Copyright 2014-2016 The MathWorks, Inc. %#ok<*INUSD> properties (Constant) MessageType = 'wireless_msgs/Connection' % The ROS message type end properties (Constant, Hidden) MD5Checksum = '023561cebec37b2f24b090d600c53fc2' % The MD5 Checksum of the message definition end properties (Access = protected) JavaMessage % The Java message object end properties (Dependent) Bitrate Txpower LinkQualityRaw LinkQuality SignalLevel NoiseLevel end properties (Constant, Hidden) PropertyList = {'Bitrate', 'LinkQuality', 'LinkQualityRaw', 'NoiseLevel', 'SignalLevel', 'Txpower'} % List of non-constant message properties ROSPropertyList = {'bitrate', 'link_quality', 'link_quality_raw', 'noise_level', 'signal_level', 'txpower'} % List of non-constant ROS message properties end methods function obj = Connection(msg) %Connection Construct the message object Connection import com.mathworks.toolbox.robotics.ros.message.MessageInfo; % Support default constructor if nargin == 0 obj.JavaMessage = obj.createNewJavaMessage; return; end % Construct appropriate empty array if isempty(msg) obj = obj.empty(0,1); return; end % Make scalar construction fast if isscalar(msg) % Check for correct input class if ~MessageInfo.compareTypes(msg(1), obj.MessageType) error(message('robotics:ros:message:NoTypeMatch', obj.MessageType, ... char(MessageInfo.getType(msg(1))) )); end obj.JavaMessage = msg(1); return; end % Check that this is a vector of scalar messages. Since this % is an object array, use arrayfun to verify. if ~all(arrayfun(@isscalar, msg)) error(message('robotics:ros:message:MessageArraySizeError')); end % Check that all messages in the array have the correct type if ~all(arrayfun(@(x) MessageInfo.compareTypes(x, obj.MessageType), msg)) error(message('robotics:ros:message:NoTypeMatchArray', obj.MessageType)); end % Construct array of objects if necessary objType = class(obj); for i = 1:length(msg) obj(i,1) = feval(objType, msg(i)); %#ok<AGROW> end end function bitrate = get.Bitrate(obj) %get.Bitrate Get the value for property Bitrate bitrate = int16(obj.JavaMessage.getBitrate); end function set.Bitrate(obj, bitrate) %set.Bitrate Set the value for property Bitrate validateattributes(bitrate, {'numeric'}, {'nonempty', 'scalar'}, 'Connection', 'Bitrate'); obj.JavaMessage.setBitrate(bitrate); end function txpower = get.Txpower(obj) %get.Txpower Get the value for property Txpower txpower = int16(obj.JavaMessage.getTxpower); end function set.Txpower(obj, txpower) %set.Txpower Set the value for property Txpower validateattributes(txpower, {'numeric'}, {'nonempty', 'scalar'}, 'Connection', 'Txpower'); obj.JavaMessage.setTxpower(txpower); end function linkqualityraw = get.LinkQualityRaw(obj) %get.LinkQualityRaw Get the value for property LinkQualityRaw linkqualityraw = char(obj.JavaMessage.getLinkQualityRaw); end function set.LinkQualityRaw(obj, linkqualityraw) %set.LinkQualityRaw Set the value for property LinkQualityRaw validateattributes(linkqualityraw, {'char'}, {}, 'Connection', 'LinkQualityRaw'); obj.JavaMessage.setLinkQualityRaw(linkqualityraw); end function linkquality = get.LinkQuality(obj) %get.LinkQuality Get the value for property LinkQuality linkquality = single(obj.JavaMessage.getLinkQuality); end function set.LinkQuality(obj, linkquality) %set.LinkQuality Set the value for property LinkQuality validateattributes(linkquality, {'numeric'}, {'nonempty', 'scalar'}, 'Connection', 'LinkQuality'); obj.JavaMessage.setLinkQuality(linkquality); end function signallevel = get.SignalLevel(obj) %get.SignalLevel Get the value for property SignalLevel signallevel = int16(obj.JavaMessage.getSignalLevel); end function set.SignalLevel(obj, signallevel) %set.SignalLevel Set the value for property SignalLevel validateattributes(signallevel, {'numeric'}, {'nonempty', 'scalar'}, 'Connection', 'SignalLevel'); obj.JavaMessage.setSignalLevel(signallevel); end function noiselevel = get.NoiseLevel(obj) %get.NoiseLevel Get the value for property NoiseLevel noiselevel = int16(obj.JavaMessage.getNoiseLevel); end function set.NoiseLevel(obj, noiselevel) %set.NoiseLevel Set the value for property NoiseLevel validateattributes(noiselevel, {'numeric'}, {'nonempty', 'scalar'}, 'Connection', 'NoiseLevel'); obj.JavaMessage.setNoiseLevel(noiselevel); end end methods (Access = protected) function cpObj = copyElement(obj) %copyElement Implements deep copy behavior for message % Call default copy method for shallow copy cpObj = copyElement@robotics.ros.Message(obj); % Create a new Java message object cpObj.JavaMessage = obj.createNewJavaMessage; % Iterate over all primitive properties cpObj.Bitrate = obj.Bitrate; cpObj.Txpower = obj.Txpower; cpObj.LinkQualityRaw = obj.LinkQualityRaw; cpObj.LinkQuality = obj.LinkQuality; cpObj.SignalLevel = obj.SignalLevel; cpObj.NoiseLevel = obj.NoiseLevel; end function reload(obj, strObj) %reload Called by loadobj to assign properties obj.Bitrate = strObj.Bitrate; obj.Txpower = strObj.Txpower; obj.LinkQualityRaw = strObj.LinkQualityRaw; obj.LinkQuality = strObj.LinkQuality; obj.SignalLevel = strObj.SignalLevel; obj.NoiseLevel = strObj.NoiseLevel; end end methods (Access = ?robotics.ros.Message) function strObj = saveobj(obj) %saveobj Implements saving of message to MAT file % Return an empty element if object array is empty if isempty(obj) strObj = struct.empty; return end strObj.Bitrate = obj.Bitrate; strObj.Txpower = obj.Txpower; strObj.LinkQualityRaw = obj.LinkQualityRaw; strObj.LinkQuality = obj.LinkQuality; strObj.SignalLevel = obj.SignalLevel; strObj.NoiseLevel = obj.NoiseLevel; end end methods (Static, Access = {?matlab.unittest.TestCase, ?robotics.ros.Message}) function obj = loadobj(strObj) %loadobj Implements loading of message from MAT file % Return an empty object array if the structure element is not defined if isempty(strObj) obj = robotics.ros.msggen.wireless_msgs.Connection.empty(0,1); return end % Create an empty message object obj = robotics.ros.msggen.wireless_msgs.Connection; obj.reload(strObj); end end end