cpswitchpower.cs
来自「zwave 无线通讯协议 PC controller 控制器源码」· CS 代码 · 共 334 行
CS
334 行
////////////////////////////////////////////////////////////////////////////////////////////////
//
// #######
// # ## #### ##### ##### ## ## #####
// ## ## ## ## ## ## ## ## ##
// ## # ###### ## ## #### ## ## ####
// ## ## ## ## ## ## ##### ##
// ####### #### ## ## ##### ## #####
// #####
// Z-Wave, the wireless language.
//
// Copyright Zensys A/S, 2003,2004
//
// All Rights Reserved
//
// Description: This source file is the sourcefile for the
// CpSwitchPower class
//
// Source is generated by the Intel DeviceBuilder Tool
//
// Author: Johann Sigfredsson
//
// Last Changed By: $Author: jch $
// Revision: $Revision: 1.1 $
// Last Changed: $Date: 2006/03/31 14:30:46 $
//
//////////////////////////////////////////////////////////////////////////////////////////////
using System;
using System.Collections;
using System.Threading;
using Intel.Utilities;
using Intel.UPNP;
namespace MicroStack
{
/// <summary>
/// Transparent ClientSide UPnP Service
/// </summary>
public class CpSwitchPower
{
private Hashtable UnspecifiedTable = Hashtable.Synchronized(new Hashtable());
internal UPnPService _S;
public UPnPService GetUPnPService()
{
return(_S);
}
public static string SERVICE_NAME = "urn:schemas-upnp-org:service:SwitchPower:";
public double VERSION
{
get
{
return(double.Parse(_S.Version));
}
}
public delegate void StateVariableModifiedHandler_Status(CpSwitchPower sender, System.Boolean NewValue);
private WeakEvent OnStateVariable_Status_Event = new WeakEvent();
public event StateVariableModifiedHandler_Status OnStateVariable_Status
{
add{OnStateVariable_Status_Event.Register(value);}
remove{OnStateVariable_Status_Event.UnRegister(value);}
}
protected void Status_ModifiedSink(UPnPStateVariable Var, object NewValue)
{
OnStateVariable_Status_Event.Fire(this, Status);
}
public delegate void SubscribeHandler(CpSwitchPower sender, bool Success);
public event SubscribeHandler OnSubscribe;
public delegate void Delegate_OnResult_GetStatus(CpSwitchPower sender, System.Boolean ResultStatus, UPnPInvokeException e, object _Tag);
private WeakEvent OnResult_GetStatus_Event = new WeakEvent();
public event Delegate_OnResult_GetStatus OnResult_GetStatus
{
add{OnResult_GetStatus_Event.Register(value);}
remove{OnResult_GetStatus_Event.UnRegister(value);}
}
public delegate void Delegate_OnResult_SetTarget(CpSwitchPower sender, System.Boolean newTargetValue, UPnPInvokeException e, object _Tag);
private WeakEvent OnResult_SetTarget_Event = new WeakEvent();
public event Delegate_OnResult_SetTarget OnResult_SetTarget
{
add{OnResult_SetTarget_Event.Register(value);}
remove{OnResult_SetTarget_Event.UnRegister(value);}
}
public CpSwitchPower(UPnPService s)
{
_S = s;
_S.OnSubscribe += new UPnPService.UPnPEventSubscribeHandler(_subscribe_sink);
if(HasStateVariable_Status) _S.GetStateVariableObject("Status").OnModified += new UPnPStateVariable.ModifiedHandler(Status_ModifiedSink);
}
public void Dispose()
{
_S.OnSubscribe -= new UPnPService.UPnPEventSubscribeHandler(_subscribe_sink);
OnSubscribe = null;
if(HasStateVariable_Status) _S.GetStateVariableObject("Status").OnModified -= new UPnPStateVariable.ModifiedHandler(Status_ModifiedSink);
}
public void _subscribe(int Timeout)
{
_S.Subscribe(Timeout, null);
}
protected void _subscribe_sink(UPnPService sender, bool OK)
{
if(OnSubscribe!=null)
{
OnSubscribe(this, OK);
}
}
public void SetUnspecifiedValue(string EnumType, string val)
{
string hash = Thread.CurrentThread.GetHashCode().ToString() + ":" + EnumType;
UnspecifiedTable[hash] = val;
}
public string GetUnspecifiedValue(string EnumType)
{
string hash = Thread.CurrentThread.GetHashCode().ToString() + ":" + EnumType;
if(UnspecifiedTable.ContainsKey(hash)==false)
{
return("");
}
string RetVal = (string)UnspecifiedTable[hash];
return(RetVal);
}
public System.Boolean Status
{
get
{
return((System.Boolean)_S.GetStateVariable("Status"));
}
}
public System.Boolean Target
{
get
{
return((System.Boolean)_S.GetStateVariable("Target"));
}
}
public bool HasStateVariable_Status
{
get
{
if(_S.GetStateVariableObject("Status")==null)
{
return(false);
}
else
{
return(true);
}
}
}
public bool HasStateVariable_Target
{
get
{
if(_S.GetStateVariableObject("Target")==null)
{
return(false);
}
else
{
return(true);
}
}
}
public bool HasAction_GetStatus
{
get
{
if(_S.GetAction("GetStatus")==null)
{
return(false);
}
else
{
return(true);
}
}
}
public bool HasAction_SetTarget
{
get
{
if(_S.GetAction("SetTarget")==null)
{
return(false);
}
else
{
return(true);
}
}
}
public void Sync_GetStatus(out System.Boolean ResultStatus)
{
UPnPArgument[] args = new UPnPArgument[1];
args[0] = new UPnPArgument("ResultStatus", "");
_S.InvokeSync("GetStatus", args);
ResultStatus = (System.Boolean) args[0].DataValue;
return;
}
public void GetStatus()
{
GetStatus(null, null);
}
public void GetStatus(object _Tag, Delegate_OnResult_GetStatus _Callback)
{
UPnPArgument[] args = new UPnPArgument[1];
args[0] = new UPnPArgument("ResultStatus", "");
_S.InvokeAsync("GetStatus", args, new object[2]{_Tag,_Callback},new UPnPService.UPnPServiceInvokeHandler(Sink_GetStatus), new UPnPService.UPnPServiceInvokeErrorHandler(Error_Sink_GetStatus));
}
private void Sink_GetStatus(UPnPService sender, string MethodName, UPnPArgument[] Args, object RetVal, object _Tag)
{
object[] StateInfo = (object[])_Tag;
if(StateInfo[1]!=null)
{
((Delegate_OnResult_GetStatus)StateInfo[1])(this, (System.Boolean )Args[0].DataValue, null, StateInfo[0]);
}
else
{
OnResult_GetStatus_Event.Fire(this, (System.Boolean )Args[0].DataValue, null, StateInfo[0]);
}
}
private void Error_Sink_GetStatus(UPnPService sender, string MethodName, UPnPArgument[] Args, UPnPInvokeException e, object _Tag)
{
object[] StateInfo = (object[])_Tag;
if(StateInfo[1]!=null)
{
((Delegate_OnResult_GetStatus)StateInfo[1])(this, (System.Boolean)UPnPService.CreateObjectInstance(typeof(System.Boolean),null), e, StateInfo[0]);
}
else
{
OnResult_GetStatus_Event.Fire(this, (System.Boolean)UPnPService.CreateObjectInstance(typeof(System.Boolean),null), e, StateInfo[0]);
}
}
public void Sync_SetTarget(System.Boolean newTargetValue)
{
UPnPArgument[] args = new UPnPArgument[1];
args[0] = new UPnPArgument("newTargetValue", newTargetValue);
_S.InvokeSync("SetTarget", args);
newTargetValue = (System.Boolean) args[0].DataValue;
return;
}
public void SetTarget(System.Boolean newTargetValue)
{
SetTarget(newTargetValue, null, null);
}
public void SetTarget(System.Boolean newTargetValue, object _Tag, Delegate_OnResult_SetTarget _Callback)
{
UPnPArgument[] args = new UPnPArgument[1];
args[0] = new UPnPArgument("newTargetValue", newTargetValue);
_S.InvokeAsync("SetTarget", args, new object[2]{_Tag,_Callback},new UPnPService.UPnPServiceInvokeHandler(Sink_SetTarget), new UPnPService.UPnPServiceInvokeErrorHandler(Error_Sink_SetTarget));
}
private void Sink_SetTarget(UPnPService sender, string MethodName, UPnPArgument[] Args, object RetVal, object _Tag)
{
object[] StateInfo = (object[])_Tag;
if(StateInfo[1]!=null)
{
((Delegate_OnResult_SetTarget)StateInfo[1])(this, (System.Boolean )Args[0].DataValue, null, StateInfo[0]);
}
else
{
OnResult_SetTarget_Event.Fire(this, (System.Boolean )Args[0].DataValue, null, StateInfo[0]);
}
}
private void Error_Sink_SetTarget(UPnPService sender, string MethodName, UPnPArgument[] Args, UPnPInvokeException e, object _Tag)
{
object[] StateInfo = (object[])_Tag;
if(StateInfo[1]!=null)
{
((Delegate_OnResult_SetTarget)StateInfo[1])(this, (System.Boolean )Args[0].DataValue, e, StateInfo[0]);
}
else
{
OnResult_SetTarget_Event.Fire(this, (System.Boolean )Args[0].DataValue, e, StateInfo[0]);
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?