zcmdclass.cs
来自「zwave 无线通讯协议 PC controller 控制器源码」· CS 代码 · 共 1,827 行 · 第 1/5 页
CS
1,827 行
//Generated on: 10:55:24, 11. maj 2006
////////////////////////////////////////////////////////////////////////////////////////////////
//
// #######
// # ## #### ##### ##### ## ## #####
// ## ## ## ## ## ## ## ## ##
// ## # ###### ## ## #### ## ## ####
// ## ## ## ## ## ## ##### ##
// ####### #### ## ## ##### ## #####
// #####
// Z-Wave, the wireless language.
//
// Copyright Zensys A/S, 2003
//
// All Rights Reserved
//
// Description: Device and Command Class types and definitions.
//
//
// Author: Auto Generated
//
// Last Changed By: $Author: jrm $
// Revision: $Revision: 1.2 $
// Last Changed: $Date: 2006/07/25 09:47:31 $
//
//////////////////////////////////////////////////////////////////////////////////////////////
using System;
using System.Data;
using System.Reflection;
namespace Zensys.ZCmdClass
{
/// <summary>
/// DeviceClass is specified by the following enums
/// </summary>
public enum DeviceClass
{
/// <summary>
///
/// </summary>
BASIC_TYPE_CONTROLLER = 0x01,
/// <summary>
///
/// </summary>
BASIC_TYPE_STATIC_CONTROLLER = 0x02,
/// <summary>
///
/// </summary>
BASIC_TYPE_SLAVE = 0x03,
/// <summary>
///
/// </summary>
BASIC_TYPE_ROUTING_SLAVE = 0x04
}
/// <summary>
/// Class that can be used to generate Z-Wave frames
/// </summary>
public static class ZW_class
{
/// <summary>
/// Fill buffer with Basic, Generic and Specific Device Class
/// </summary>
public static byte[] FillCmd(params byte[] values)
{
int i = 0; //Points to next value
byte[] command = new byte[values.Length];
command[0] = values[i++];
command[1] = values[i++];
for (; i < values.Length; i++)
command[i] = values[i];
return command;
}
/// <summary>
/// Fills a buffer with the data specified
/// </summary>
/// <param name="array">custom array which is added to the end of the buffer</param>
/// <param name="values">the standard values</param>
/// <returns></returns>
public static byte[] FillCmd(byte[] array, params byte[] values)
{
int i = 0; //Points to next value
byte[] command;
if (array != null)
{
command = new byte[values.Length + array.Length];
}
else
{
command = new byte[values.Length];
}
command[0] = values[i++];
command[1] = values[i++];
for (; i < values.Length; i++)
{
command[i] = values[i];
}
for (int n = 0; n < array.Length; n++)
{
command[i++] = array[n];
}
return command;
}
/// <summary>
/// ZW_BASIC_SET_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_BasicSetFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_BASIC, (byte)cmdBasic.BASIC_SET, (byte)val);
}
/// <summary>
/// ZW_BASIC_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_BasicGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_BASIC, (byte)cmdBasic.BASIC_GET);
}
/// <summary>
/// ZW_BASIC_REPORT_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_BasicReportFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_BASIC, (byte)cmdBasic.BASIC_REPORT, val);
}
/// <summary>
/// PROPRIETARY_SET
/// </summary>
/// <param name="data1"></param>
/// <returns></returns>
public static byte[] ZW_PropietarySetFrame(byte data1)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_PROPRIETARY, (byte)cmdProprietary.PROPRIETARY_SET);
}
/// <summary>
/// PROPRIETARY_GET
/// </summary>
/// <returns></returns>
public static byte[] ZW_PropietaryGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_PROPRIETARY, (byte)cmdProprietary.PROPRIETARY_GET);
}
/// <summary>
/// PROPRIETARY_REPORT
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public static byte[] ZW_PropetaryReportFrame(byte data)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_PROPRIETARY, (byte)cmdProprietary.PROPRIETARY_REPORT, data);
}
/// <summary>
/// ZW_BINARY_SWITCH_SET_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_BinarySwitchSetFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_BINARY, (byte)cmdSwitchBinary.SWITCH_BINARY_SET, val);
}
/// <summary>
/// ZW_BINARY_SWITCH_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_BinarySwitchGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_BINARY, (byte)cmdSwitchBinary.SWITCH_BINARY_GET);
}
/// <summary>
/// ZW_BINARY_SWITCH_REPORT_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_BinarySwitchReportFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_BINARY, (byte)cmdSwitchBinary.SWITCH_BINARY_REPORT, val);
}
/// <summary>
/// ZW_MULTILEVEL_SWITCH_SET_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_MultilevelSwitchSetFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_MULTILEVEL, (byte)cmdSwitchMultilevel.SWITCH_MULTILEVEL_SET, val);
}
/// <summary>
/// ZW_MULTILEVEL_SWITCH_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_MultilevelSwitchGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_MULTILEVEL, (byte)cmdSwitchMultilevel.SWITCH_MULTILEVEL_GET);
}
/// <summary>
/// ZW_MULTILEVEL_SWITCH_REPORT_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_MultilevelSwitchReportFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_MULTILEVEL, (byte)cmdSwitchMultilevel.SWITCH_MULTILEVEL_REPORT, val);
}
/// <summary>
/// ZW_MULTILEVEL_SWITCH_START_CHANGE_FRAME
/// </summary>
/// <param name="dir"></param>
/// <param name="startValue"></param>
/// <returns></returns>
public static byte[] ZW_MultilevelSwitchStartChangeFrame(byte dir, byte startValue)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_MULTILEVEL,
(byte)cmdSwitchMultilevel.SWITCH_MULTILEVEL_START_LEVEL_CHANGE,
dir, startValue);
}
/// <summary>
/// ZW_MULTILEVEL_SWITCH_STOP_CHANGE_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_MultilevelSwitchStopChangeFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_MULTILEVEL, (byte)cmdSwitchMultilevel.SWITCH_MULTILEVEL_STOP_LEVEL_CHANGE);
}
/// <summary>
/// ZW_ALL_SWITCH_SET_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_AllSwitchSetFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_ALL, (byte)cmdSwitchAll.SWITCH_ALL_SET, val);
}
/// <summary>
/// ZW_ALL_SWITCH_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_AllSwitchGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_ALL, (byte)cmdSwitchAll.SWITCH_ALL_GET);
}
/// <summary>
/// ZW_ALL_SWITCH_REPORT_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_AllSwitchReportFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_ALL, (byte)cmdSwitchAll.SWITCH_ALL_REPORT, val);
}
/// <summary>
/// ZW_ALL_SWITCH_ON_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_AllSwitchOnFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_ALL, (byte)cmdSwitchAll.SWITCH_ALL_ON);
}
/// <summary>
/// ZW_ALL_SWITCH_OFF_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_AllSwitchOffFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SWITCH_ALL, (byte)cmdSwitchAll.SWITCH_ALL_OFF);
}
/// <summary>
/// ZW_BINARY_SENSOR_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_BinarySensorGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SENSOR_BINARY, (byte)cmdSensorBinary.SENSOR_BINARY_GET);
}
/// <summary>
/// ZW_BINARY_SENSOR_REPORT_FRAME
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public static byte[] ZW_BinarySensorReportFrame(byte val)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SENSOR_BINARY, (byte)cmdSensorBinary.SENSOR_BINARY_REPORT, val);
}
/// <summary>
/// ZW_BINARY_SENSOR_GET_FRAME
/// </summary>
/// <returns></returns>
public static byte[] ZW_MultilevelSensorGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SENSOR_MULTILEVEL, (byte)cmdSensorMultilevel.SENSOR_MULTILEVEL_GET);
}
/// <summary>
/// ZW_BINARY_SENSOR_REPORT_FRAME
/// </summary>
/// <param name="sType"></param>
/// <param name="sValueFormat"></param>
/// <param name="sValue1"></param>
/// <param name="sValue2"></param>
/// <param name="sValue3"></param>
/// <param name="sValue4"></param>
/// <returns></returns>
public static byte[] ZW_MultilevelSensorReportFrame(byte sType, byte sValueFormat, byte sValue1, byte sValue2, byte sValue3, byte sValue4)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_SENSOR_MULTILEVEL, (byte)cmdSensorMultilevel.SENSOR_MULTILEVEL_REPORT, sType, sValueFormat, sValue1, sValue2, sValue3, sValue4);
}
/// <summary>
/// METER_PULSE_GET
/// </summary>
/// <returns></returns>
public static byte[] ZW_PulseMeterGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_METER_PULSE, (byte)cmdMeterPulse.METER_PULSE_GET);
}
/// <summary>
/// METER_PULSE_REPORT
/// </summary>
/// <param name="pulseCount1"></param>
/// <param name="pulseCount2"></param>
/// <param name="pulseCount3"></param>
/// <param name="pulseCount4"></param>
/// <returns></returns>
public static byte[] ZW_PulseMeterReportFrame(byte pulseCount1, byte pulseCount2, byte pulseCount3, byte pulseCount4)
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_METER_PULSE, (byte)cmdMeterPulse.METER_PULSE_REPORT,
pulseCount1, pulseCount2, pulseCount3, pulseCount4);
}
/// <summary>
/// METER_PULSE_GET
/// </summary>
/// <returns></returns>
public static byte[] ZW_VersionGetFrame()
{
return FillCmd((byte)cmdClass.COMMAND_CLASS_VERSION, (byte)cmdVersion.VERSION_GET);
}
/// <summary>
/// VERSION_COMMAND_CLASS_REPORT
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?