예제 #1
0
        /// <summary>Get the data for a charging state value</summary>
        /// <param name="data">Will be populated with the data</param>
        /// <param name="chargingState">The repeat rate value to encode</param>
        /// <returns>`true` if successful</returns>
        public static bool ATChargingStateGetData(DeviceTypes.ATMutableBytes data, DeviceTypes.ATChargingState chargingState)
        {
            var _arg0 = ReferenceEquals(data, null) ? IntPtr.Zero : data._Instance;
            var _ret  = _Internal.ATChargingStateGetData(_arg0, chargingState);

            return(_ret);
        }
예제 #2
0
        /// <summary>Get a charging state value from data</summary>
        /// <param name="data">The data</param>
        /// <param name="chargingState">On return, contains the charging state value</param>
        /// <returns>`true` if successful</returns>
        public static bool ATChargingStateParseData(DeviceTypes.ATBytes data, ref DeviceTypes.ATChargingState chargingState)
        {
            if (ReferenceEquals(data, null))
            {
                throw new ArgumentNullException("data", "Cannot be null because it is passed by value.");
            }
            var _arg0 = data._Instance;

            fixed(DeviceTypes.ATChargingState *_chargingState1 = &chargingState)
            {
                var _arg1 = _chargingState1;
                var _ret  = _Internal.ATChargingStateParseData(_arg0, _arg1);

                return(_ret);
            }
        }
예제 #3
0
        /// <summary>Get a description for a charging state value</summary>
        /// <param name="chargingState">The charging state value</param>
        /// <returns>A null-terminated constant string</returns>
        public static string ATChargingStateDescription(DeviceTypes.ATChargingState chargingState)
        {
            var _ret = _Internal.ATChargingStateDescription(chargingState);

            if (_ret == IntPtr.Zero)
            {
                return(default(string));
            }
            var _retPtr = (byte *)_ret;
            int _length = 0;

            while (*(_retPtr++) != 0)
            {
                _length += sizeof(byte);
            }
            return(Text.Encoding.UTF8.GetString((byte *)_ret, _length));
        }
예제 #4
0
        /// <summary>Validate a charging state value</summary>
        /// <param name="chargingState">The charging state value to validate</param>
        /// <returns>`true` if valid</returns>
        public static bool ATChargingStateValidate(DeviceTypes.ATChargingState chargingState)
        {
            var _ret = _Internal.ATChargingStateValidate(chargingState);

            return(_ret);
        }
예제 #5
0
 internal static extern IntPtr ATChargingStateDescription(DeviceTypes.ATChargingState chargingState);
예제 #6
0
 internal static extern bool ATChargingStateGetData(IntPtr data, DeviceTypes.ATChargingState chargingState);
예제 #7
0
 internal static extern bool ATChargingStateValidate(DeviceTypes.ATChargingState chargingState);