public RenderingControlLastChange(CpRenderingControl cpRC, string Ident, int ID, RenderingControlLastChange.OnReadyHandler ReadyCallback) { OpenSource.Utilities.InstanceTracker.Add(this); this.OnReady += ReadyCallback; InstanceID = ID; Identifier = Ident; _cp = cpRC; _cp.OnStateVariable_LastChange += new CpRenderingControl.StateVariableModifiedHandler_LastChange(LastChangeSink); _cp._subscribe(500); lock (this) { if (_cp.HasAction_GetVolume) { CpRenderingControl.Delegate_OnResult_GetVolume TD = new CpRenderingControl.Delegate_OnResult_GetVolume(VolumeSink); StateCounter += _cp.Values_A_ARG_TYPE_Channel.Length; foreach (string voltype in _cp.Values_A_ARG_TYPE_Channel) { _cp.SetUnspecifiedValue("Enum_A_ARG_TYPE_Channel", voltype); _cp.GetVolume((UInt32)ID, CpRenderingControl.Enum_A_ARG_TYPE_Channel._UNSPECIFIED_, null, TD); } } if (_cp.HasAction_GetMute) { CpRenderingControl.Delegate_OnResult_GetMute RGM = new CpRenderingControl.Delegate_OnResult_GetMute(MuteSink); StateCounter += _cp.Values_A_ARG_TYPE_Channel.Length; foreach (string voltype in _cp.Values_A_ARG_TYPE_Channel) { _cp.SetUnspecifiedValue("Enum_A_ARG_TYPE_Channel", voltype); _cp.GetMute((UInt32)ID, CpRenderingControl.Enum_A_ARG_TYPE_Channel._UNSPECIFIED_, null, RGM); } } if (StateCounter == 0) { if (OnReady != null) { OnReady(this); } } } }
public RenderingControlLastChange(CpRenderingControl cpRC, string Ident, int ID, RenderingControlLastChange.OnReadyHandler ReadyCallback) { //OpenSource.Utilities.InstanceTracker.Add(this); this.OnReady += ReadyCallback; InstanceID = ID; Identifier = Ident; _cp = cpRC; _cp.OnStateVariable_LastChange += new CpRenderingControl.StateVariableModifiedHandler_LastChange(LastChangeSink); _cp._subscribe(500); lock(this) { if(_cp.HasAction_GetVolume) { CpRenderingControl.Delegate_OnResult_GetVolume TD = new CpRenderingControl.Delegate_OnResult_GetVolume(VolumeSink); StateCounter += _cp.Values_A_ARG_TYPE_Channel.Length; foreach(string voltype in _cp.Values_A_ARG_TYPE_Channel) { _cp.SetUnspecifiedValue("Enum_A_ARG_TYPE_Channel",voltype); _cp.GetVolume((UInt32)ID,CpRenderingControl.Enum_A_ARG_TYPE_Channel._UNSPECIFIED_,null,TD); } } if(_cp.HasAction_GetMute) { CpRenderingControl.Delegate_OnResult_GetMute RGM = new CpRenderingControl.Delegate_OnResult_GetMute(MuteSink); StateCounter += _cp.Values_A_ARG_TYPE_Channel.Length; foreach(string voltype in _cp.Values_A_ARG_TYPE_Channel) { _cp.SetUnspecifiedValue("Enum_A_ARG_TYPE_Channel",voltype); _cp.GetMute((UInt32)ID,CpRenderingControl.Enum_A_ARG_TYPE_Channel._UNSPECIFIED_,null,RGM); } } if(StateCounter==0) { if(OnReady!=null) OnReady(this); } } }