AddInputParameter() public method

Add an input parameter
public AddInputParameter ( Parameter aParameter ) : void
aParameter Parameter Input parameter. Ownership is passed to the action
return void
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkConfiguration1(ICpDevice aDevice)
            : base("linn-co-uk", "Configuration", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionConfigurationXml = new OpenHome.Net.Core.Action("ConfigurationXml");
            param = new ParameterString("aConfigurationXml", allowedValues);
            iActionConfigurationXml.AddOutputParameter(param);

            iActionParameterXml = new OpenHome.Net.Core.Action("ParameterXml");
            param = new ParameterString("aParameterXml", allowedValues);
            iActionParameterXml.AddOutputParameter(param);

            iActionSetParameter = new OpenHome.Net.Core.Action("SetParameter");
            param = new ParameterString("aTarget", allowedValues);
            iActionSetParameter.AddInputParameter(param);
            param = new ParameterString("aName", allowedValues);
            iActionSetParameter.AddInputParameter(param);
            param = new ParameterString("aValue", allowedValues);
            iActionSetParameter.AddInputParameter(param);

            iConfigurationXml = new PropertyString("ConfigurationXml", ConfigurationXmlPropertyChanged);
            AddProperty(iConfigurationXml);
            iParameterXml = new PropertyString("ParameterXml", ParameterXmlPropertyChanged);
            AddProperty(iParameterXml);

            iPropertyLock = new Mutex();
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkExaktInputs1(ICpDevice aDevice)
            : base("linn-co-uk", "ExaktInputs", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetAssociation = new OpenHome.Net.Core.Action("GetAssociation");
            param = new ParameterUint("InputIndex");
            iActionGetAssociation.AddInputParameter(param);
            param = new ParameterString("DeviceId", allowedValues);
            iActionGetAssociation.AddOutputParameter(param);

            iActionSetAssociation = new OpenHome.Net.Core.Action("SetAssociation");
            param = new ParameterUint("InputIndex");
            iActionSetAssociation.AddInputParameter(param);
            param = new ParameterString("DeviceId", allowedValues);
            iActionSetAssociation.AddInputParameter(param);

            iActionClearAssociation = new OpenHome.Net.Core.Action("ClearAssociation");
            param = new ParameterUint("InputIndex");
            iActionClearAssociation.AddInputParameter(param);

            iActionInputCount = new OpenHome.Net.Core.Action("InputCount");
            param             = new ParameterUint("InputCount");
            iActionInputCount.AddOutputParameter(param);

            iAssociations = new PropertyString("Associations", AssociationsPropertyChanged);
            AddProperty(iAssociations);

            iPropertyLock = new Mutex();
        }
 /// <summary>
 /// Signal that the action EraseSector is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// EraseSector must be overridden if this is called.</remarks>
 protected void EnableActionEraseSector()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("EraseSector");
     action.AddInputParameter(new ParameterUint("aId"));
     action.AddInputParameter(new ParameterUint("aSector"));
     iDelegateEraseSector = new ActionDelegate(DoEraseSector);
     EnableAction(action, iDelegateEraseSector, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action Swap is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Swap must be overridden if this is called.</remarks>
 protected void EnableActionSwap()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Swap");
     action.AddInputParameter(new ParameterUint("Index1"));
     action.AddInputParameter(new ParameterUint("Index2"));
     iDelegateSwap = new ActionDelegate(DoSwap);
     EnableAction(action, iDelegateSwap, GCHandle.ToIntPtr(iGch));
 }
Example #5
0
 /// <summary>
 /// Signal that the action SetSender is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetSender must be overridden if this is called.</remarks>
 protected void EnableActionSetSender()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetSender");
     action.AddInputParameter(new ParameterRelated("Uri", iPropertyUri));
     action.AddInputParameter(new ParameterRelated("Metadata", iPropertyMetadata));
     iDelegateSetSender = new ActionDelegate(DoSetSender);
     EnableAction(action, iDelegateSetSender, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetUpdateFeedParams is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetUpdateFeedParams must be overridden if this is called.</remarks>
 protected void EnableActionSetUpdateFeedParams()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetUpdateFeedParams");
     action.AddInputParameter(new ParameterRelated("Topic", iPropertyUpdateTopic));
     action.AddInputParameter(new ParameterRelated("Channel", iPropertyUpdateChannel));
     iDelegateSetUpdateFeedParams = new ActionDelegate(DoSetUpdateFeedParams);
     EnableAction(action, iDelegateSetUpdateFeedParams, GCHandle.ToIntPtr(iGch));
 }
Example #7
0
 /// <summary>
 /// Signal that the action SetColor is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetColor must be overridden if this is called.</remarks>
 protected void EnableActionSetColor()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetColor");
     action.AddInputParameter(new ParameterUint("Index"));
     action.AddInputParameter(new ParameterUint("Color"));
     iDelegateSetColor = new ActionDelegate(DoSetColor);
     EnableAction(action, iDelegateSetColor, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyAvOpenhomeOrgExakt2(ICpDevice aDevice)
            : base("av-openhome-org", "Exakt", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionDeviceList = new OpenHome.Net.Core.Action("DeviceList");
            param             = new ParameterString("List", allowedValues);
            iActionDeviceList.AddOutputParameter(param);

            iActionDeviceSettings = new OpenHome.Net.Core.Action("DeviceSettings");
            param = new ParameterString("DeviceId", allowedValues);
            iActionDeviceSettings.AddInputParameter(param);
            param = new ParameterString("Settings", allowedValues);
            iActionDeviceSettings.AddOutputParameter(param);

            iActionConnectionStatus = new OpenHome.Net.Core.Action("ConnectionStatus");
            param = new ParameterString("ConnectionStatus", allowedValues);
            iActionConnectionStatus.AddOutputParameter(param);

            iActionSet = new OpenHome.Net.Core.Action("Set");
            param      = new ParameterString("DeviceId", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterUint("BankId");
            iActionSet.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterBool("Mute");
            iActionSet.AddInputParameter(param);
            param = new ParameterBool("Persist");
            iActionSet.AddInputParameter(param);

            iActionReprogram = new OpenHome.Net.Core.Action("Reprogram");
            param            = new ParameterString("DeviceId", allowedValues);
            iActionReprogram.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionReprogram.AddInputParameter(param);

            iActionReprogramFallback = new OpenHome.Net.Core.Action("ReprogramFallback");
            param = new ParameterString("DeviceId", allowedValues);
            iActionReprogramFallback.AddInputParameter(param);
            param = new ParameterString("FileUri", allowedValues);
            iActionReprogramFallback.AddInputParameter(param);

            iActionVersion = new OpenHome.Net.Core.Action("Version");
            param          = new ParameterString("Version", allowedValues);
            iActionVersion.AddOutputParameter(param);

            iDeviceList = new PropertyString("DeviceList", DeviceListPropertyChanged);
            AddProperty(iDeviceList);
            iConnectionStatus = new PropertyString("ConnectionStatus", ConnectionStatusPropertyChanged);
            AddProperty(iConnectionStatus);
            iVersion = new PropertyString("Version", VersionPropertyChanged);
            AddProperty(iVersion);

            iPropertyLock = new Mutex();
        }
 /// <summary>
 /// Signal that the action Write is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Write must be overridden if this is called.</remarks>
 protected void EnableActionWrite()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Write");
     action.AddInputParameter(new ParameterUint("aId"));
     action.AddInputParameter(new ParameterUint("aAddress"));
     action.AddInputParameter(new ParameterBinary("aSource"));
     iDelegateWrite = new ActionDelegate(DoWrite);
     EnableAction(action, iDelegateWrite, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyOpenhomeOrgTestLights1(ICpDevice aDevice)
            : base("openhome-org", "TestLights", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetCount = new OpenHome.Net.Core.Action("GetCount");
            param           = new ParameterUint("Count");
            iActionGetCount.AddOutputParameter(param);

            iActionGetRoom = new OpenHome.Net.Core.Action("GetRoom");
            param          = new ParameterUint("Index");
            iActionGetRoom.AddInputParameter(param);
            param = new ParameterString("RoomName", allowedValues);
            iActionGetRoom.AddOutputParameter(param);

            iActionGetName = new OpenHome.Net.Core.Action("GetName");
            param          = new ParameterUint("Index");
            iActionGetName.AddInputParameter(param);
            param = new ParameterString("FriendlyName", allowedValues);
            iActionGetName.AddOutputParameter(param);

            iActionGetPosition = new OpenHome.Net.Core.Action("GetPosition");
            param = new ParameterUint("Index");
            iActionGetPosition.AddInputParameter(param);
            param = new ParameterUint("X");
            iActionGetPosition.AddOutputParameter(param);
            param = new ParameterUint("Y");
            iActionGetPosition.AddOutputParameter(param);
            param = new ParameterUint("Z");
            iActionGetPosition.AddOutputParameter(param);

            iActionSetColor = new OpenHome.Net.Core.Action("SetColor");
            param           = new ParameterUint("Index");
            iActionSetColor.AddInputParameter(param);
            param = new ParameterUint("Color");
            iActionSetColor.AddInputParameter(param);

            iActionGetColor = new OpenHome.Net.Core.Action("GetColor");
            param           = new ParameterUint("Index");
            iActionGetColor.AddInputParameter(param);
            param = new ParameterUint("Color");
            iActionGetColor.AddOutputParameter(param);

            iActionGetColorComponents = new OpenHome.Net.Core.Action("GetColorComponents");
            param = new ParameterUint("Color");
            iActionGetColorComponents.AddInputParameter(param);
            param = new ParameterUint("Brightness");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Red");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Green");
            iActionGetColorComponents.AddOutputParameter(param);
            param = new ParameterUint("Blue");
            iActionGetColorComponents.AddOutputParameter(param);
        }
 /// <summary>
 /// Signal that the action Renew is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Renew must be overridden if this is called.</remarks>
 protected void EnableActionRenew()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Renew");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterString("Sid", allowedValues));
     action.AddInputParameter(new ParameterUint("RequestedDuration"));
     action.AddOutputParameter(new ParameterUint("Duration"));
     iDelegateRenew = new ActionDelegate(DoRenew);
     EnableAction(action, iDelegateRenew, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Signal that the action SetEnabled is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// SetEnabled must be overridden if this is called.</remarks>
        protected void EnableActionSetEnabled()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("SetEnabled");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("Id", allowedValues));
            action.AddInputParameter(new ParameterBool("Enabled"));
            iDelegateSetEnabled = new ActionDelegate(DoSetEnabled);
            EnableAction(action, iDelegateSetEnabled, GCHandle.ToIntPtr(iGch));
        }
 /// <summary>
 /// Signal that the action Read is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Read must be overridden if this is called.</remarks>
 protected void EnableActionRead()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Read");
     action.AddInputParameter(new ParameterUint("aId"));
     action.AddInputParameter(new ParameterUint("aAddress"));
     action.AddInputParameter(new ParameterUint("aLength"));
     action.AddOutputParameter(new ParameterBinary("aBuffer"));
     iDelegateRead = new ActionDelegate(DoRead);
     EnableAction(action, iDelegateRead, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetAssociated is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetAssociated must be overridden if this is called.</remarks>
 protected void EnableActionSetAssociated()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetAssociated");
     action.AddInputParameter(new ParameterBinary("AesKeyRsaEncrypted"));
     action.AddInputParameter(new ParameterBinary("InitVectorRsaEncrypted"));
     action.AddInputParameter(new ParameterBinary("TokenAesEncrypted"));
     action.AddInputParameter(new ParameterBool("Associated"));
     iDelegateSetAssociated = new ActionDelegate(DoSetAssociated);
     EnableAction(action, iDelegateSetAssociated, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Signal that the action ReprogramFallback is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// ReprogramFallback must be overridden if this is called.</remarks>
        protected void EnableActionReprogramFallback()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("ReprogramFallback");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("DeviceId", allowedValues));
            action.AddInputParameter(new ParameterString("FileUri", allowedValues));
            iDelegateReprogramFallback = new ActionDelegate(DoReprogramFallback);
            EnableAction(action, iDelegateReprogramFallback, GCHandle.ToIntPtr(iGch));
        }
        /// <summary>
        /// Signal that the action SetAssociation is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// SetAssociation must be overridden if this is called.</remarks>
        protected void EnableActionSetAssociation()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("SetAssociation");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterUint("InputIndex"));
            action.AddInputParameter(new ParameterString("DeviceId", allowedValues));
            iDelegateSetAssociation = new ActionDelegate(DoSetAssociation);
            EnableAction(action, iDelegateSetAssociation, GCHandle.ToIntPtr(iGch));
        }
        /// <summary>
        /// Signal that the action Set is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// Set must be overridden if this is called.</remarks>
        protected void EnableActionSet()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("Set");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("Id", allowedValues));
            action.AddInputParameter(new ParameterString("UserName", allowedValues));
            action.AddInputParameter(new ParameterBinary("Password"));
            iDelegateSet = new ActionDelegate(DoSet);
            EnableAction(action, iDelegateSet, GCHandle.ToIntPtr(iGch));
        }
        /// <summary>
        /// Signal that the action ReLogin is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// ReLogin must be overridden if this is called.</remarks>
        protected void EnableActionReLogin()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("ReLogin");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("Id", allowedValues));
            action.AddInputParameter(new ParameterString("CurrentToken", allowedValues));
            action.AddOutputParameter(new ParameterString("NewToken", allowedValues));
            iDelegateReLogin = new ActionDelegate(DoReLogin);
            EnableAction(action, iDelegateReLogin, GCHandle.ToIntPtr(iGch));
        }
        /// <summary>
        /// Signal that the action Renew is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// Renew must be overridden if this is called.</remarks>
        protected void EnableActionRenew()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("Renew");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("Sid", allowedValues));
            action.AddInputParameter(new ParameterUint("RequestedDuration"));
            action.AddOutputParameter(new ParameterUint("Duration"));
            iDelegateRenew = new ActionDelegate(DoRenew);
            EnableAction(action, iDelegateRenew, GCHandle.ToIntPtr(iGch));
        }
Example #20
0
        /// <summary>
        /// Signal that the action SetParameter is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// SetParameter must be overridden if this is called.</remarks>
        protected void EnableActionSetParameter()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("SetParameter");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("aTarget", allowedValues));
            action.AddInputParameter(new ParameterString("aName", allowedValues));
            action.AddInputParameter(new ParameterString("aValue", allowedValues));
            iDelegateSetParameter = new ActionDelegate(DoSetParameter);
            EnableAction(action, iDelegateSetParameter, GCHandle.ToIntPtr(iGch));
        }
Example #21
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyRaumfeldComConfigService1(CpDevice aDevice)
            : base("schemas-raumfeld-com", "ConfigService", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetPublicKey = new OpenHome.Net.Core.Action("GetPublicKey");
            param = new ParameterString("Key", allowedValues);
            iActionGetPublicKey.AddOutputParameter(param);

            iActionGetRevision = new OpenHome.Net.Core.Action("GetRevision");
            param = new ParameterUint("Revision");
            iActionGetRevision.AddOutputParameter(param);

            iActionSetPreferences = new OpenHome.Net.Core.Action("SetPreferences");
            param = new ParameterString("Preferences", allowedValues);
            iActionSetPreferences.AddInputParameter(param);
            param = new ParameterString("LeastCommonChangedNode", allowedValues);
            iActionSetPreferences.AddInputParameter(param);
            param = new ParameterUint("ExpectedRevision");
            iActionSetPreferences.AddInputParameter(param);
            allowedValues.Add("ForceOverwrite");
            allowedValues.Add("Cancel");
            param = new ParameterString("OnConflict", allowedValues);
            iActionSetPreferences.AddInputParameter(param);
            allowedValues.Clear();

            iActionGetPreferences = new OpenHome.Net.Core.Action("GetPreferences");
            param = new ParameterString("PublicKey", allowedValues);
            iActionGetPreferences.AddInputParameter(param);
            param = new ParameterString("Preferences", allowedValues);
            iActionGetPreferences.AddOutputParameter(param);
            param = new ParameterUint("Revision");
            iActionGetPreferences.AddOutputParameter(param);

            iActionGetDevice = new OpenHome.Net.Core.Action("GetDevice");
            allowedValues.Add("meta-server");
            allowedValues.Add("renderer");
            param = new ParameterString("Service", allowedValues);
            iActionGetDevice.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("UniqueDeviceName", allowedValues);
            iActionGetDevice.AddOutputParameter(param);

            iLastChange = new PropertyString("LastChange", LastChangePropertyChanged);
            AddProperty(iLastChange);
            iRevision = new PropertyUint("Revision", RevisionPropertyChanged);
            AddProperty(iRevision);
            iARG_TYPE_OnConflict = new PropertyString("ARG_TYPE_OnConflict", ARG_TYPE_OnConflictPropertyChanged);
            AddProperty(iARG_TYPE_OnConflict);

            iPropertyLock = new Mutex();
        }
        /// <summary>
        /// Signal that the action Set is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// Set must be overridden if this is called.</remarks>
        protected void EnableActionSet()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("Set");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("DeviceId", allowedValues));
            action.AddInputParameter(new ParameterUint("BankId"));
            action.AddInputParameter(new ParameterString("FileUri", allowedValues));
            action.AddInputParameter(new ParameterBool("Mute"));
            action.AddInputParameter(new ParameterBool("Persist"));
            iDelegateSet = new ActionDelegate(DoSet);
            EnableAction(action, iDelegateSet, GCHandle.ToIntPtr(iGch));
        }
 /// <summary>
 /// Signal that the action Subscribe is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Subscribe must be overridden if this is called.</remarks>
 protected void EnableActionSubscribe()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Subscribe");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterString("ClientId", allowedValues));
     action.AddInputParameter(new ParameterString("Udn", allowedValues));
     action.AddInputParameter(new ParameterString("Service", allowedValues));
     action.AddInputParameter(new ParameterUint("RequestedDuration"));
     action.AddOutputParameter(new ParameterString("Sid", allowedValues));
     action.AddOutputParameter(new ParameterUint("Duration"));
     iDelegateSubscribe = new ActionDelegate(DoSubscribe);
     EnableAction(action, iDelegateSubscribe, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Signal that the action Subscribe is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// Subscribe must be overridden if this is called.</remarks>
        protected void EnableActionSubscribe()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("Subscribe");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterString("ClientId", allowedValues));
            action.AddInputParameter(new ParameterString("Udn", allowedValues));
            action.AddInputParameter(new ParameterString("Service", allowedValues));
            action.AddInputParameter(new ParameterUint("RequestedDuration"));
            action.AddOutputParameter(new ParameterString("Sid", allowedValues));
            action.AddOutputParameter(new ParameterUint("Duration"));
            iDelegateSubscribe = new ActionDelegate(DoSubscribe);
            EnableAction(action, iDelegateSubscribe, GCHandle.ToIntPtr(iGch));
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkUpdate1(ICpDevice aDevice)
            : base("linn-co-uk", "Update", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionPushManifest = new OpenHome.Net.Core.Action("PushManifest");
            param = new ParameterString("Uri", allowedValues);
            iActionPushManifest.AddInputParameter(param);

            iActionSetUpdateFeedParams = new OpenHome.Net.Core.Action("SetUpdateFeedParams");
            param = new ParameterString("Topic", allowedValues);
            iActionSetUpdateFeedParams.AddInputParameter(param);
            allowedValues.Add("release");
            allowedValues.Add("beta");
            allowedValues.Add("development");
            allowedValues.Add("nightly");
            param = new ParameterString("Channel", allowedValues);
            iActionSetUpdateFeedParams.AddInputParameter(param);
            allowedValues.Clear();

            iActionGetUpdateFeedParams = new OpenHome.Net.Core.Action("GetUpdateFeedParams");
            param = new ParameterString("Topic", allowedValues);
            iActionGetUpdateFeedParams.AddOutputParameter(param);
            allowedValues.Add("release");
            allowedValues.Add("beta");
            allowedValues.Add("development");
            allowedValues.Add("nightly");
            param = new ParameterString("Channel", allowedValues);
            iActionGetUpdateFeedParams.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetUpdateStatus = new OpenHome.Net.Core.Action("GetUpdateStatus");
            param = new ParameterString("UpdateStatus", allowedValues);
            iActionGetUpdateStatus.AddOutputParameter(param);

            iActionApply = new OpenHome.Net.Core.Action("Apply");

            iActionRestore = new OpenHome.Net.Core.Action("Restore");

            iUpdateStatus = new PropertyString("UpdateStatus", UpdateStatusPropertyChanged);
            AddProperty(iUpdateStatus);
            iUpdateTopic = new PropertyString("UpdateTopic", UpdateTopicPropertyChanged);
            AddProperty(iUpdateTopic);
            iUpdateChannel = new PropertyString("UpdateChannel", UpdateChannelPropertyChanged);
            AddProperty(iUpdateChannel);

            iPropertyLock = new Mutex();
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyLinnCoUkCloud1(ICpDevice aDevice)
            : base("linn-co-uk", "Cloud", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List <String> allowedValues = new List <String>();

            iActionGetChallengeResponse = new OpenHome.Net.Core.Action("GetChallengeResponse");
            param = new ParameterString("Challenge", allowedValues);
            iActionGetChallengeResponse.AddInputParameter(param);
            param = new ParameterString("Response", allowedValues);
            iActionGetChallengeResponse.AddOutputParameter(param);

            iActionSetAssociated = new OpenHome.Net.Core.Action("SetAssociated");
            param = new ParameterBinary("AesKeyRsaEncrypted");
            iActionSetAssociated.AddInputParameter(param);
            param = new ParameterBinary("InitVectorRsaEncrypted");
            iActionSetAssociated.AddInputParameter(param);
            param = new ParameterBinary("TokenAesEncrypted");
            iActionSetAssociated.AddInputParameter(param);
            param = new ParameterBool("Associated");
            iActionSetAssociated.AddInputParameter(param);

            iActionSetControlEnabled = new OpenHome.Net.Core.Action("SetControlEnabled");
            param = new ParameterBool("Enabled");
            iActionSetControlEnabled.AddInputParameter(param);

            iActionGetControlEnabled = new OpenHome.Net.Core.Action("GetControlEnabled");
            param = new ParameterBool("Enabled");
            iActionGetControlEnabled.AddOutputParameter(param);

            iActionGetConnected = new OpenHome.Net.Core.Action("GetConnected");
            param = new ParameterBool("Connected");
            iActionGetConnected.AddOutputParameter(param);

            iActionGetPublicKey = new OpenHome.Net.Core.Action("GetPublicKey");
            param = new ParameterString("PublicKey", allowedValues);
            iActionGetPublicKey.AddOutputParameter(param);

            iAssociationStatus = new PropertyString("AssociationStatus", AssociationStatusPropertyChanged);
            AddProperty(iAssociationStatus);
            iControlEnabled = new PropertyBool("ControlEnabled", ControlEnabledPropertyChanged);
            AddProperty(iControlEnabled);
            iConnected = new PropertyBool("Connected", ConnectedPropertyChanged);
            AddProperty(iConnected);
            iPublicKey = new PropertyString("PublicKey", PublicKeyPropertyChanged);
            AddProperty(iPublicKey);

            iPropertyLock = new Mutex();
        }
Example #27
0
 /// <summary>
 /// Signal that the action SetDelay is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetDelay must be overridden if this is called.</remarks>
 protected void EnableActionSetDelay()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetDelay");
     action.AddInputParameter(new ParameterRelated("Delay", iPropertyDelay));
     iDelegateSetDelay = new ActionDelegate(DoSetDelay);
     EnableAction(action, iDelegateSetDelay, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action ConnectionComplete is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// ConnectionComplete must be overridden if this is called.</remarks>
 protected void EnableActionConnectionComplete()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("ConnectionComplete");
     action.AddInputParameter(new ParameterInt("ConnectionID"));
     iDelegateConnectionComplete = new ActionDelegate(DoConnectionComplete);
     EnableAction(action, iDelegateConnectionComplete, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Signal that the action GetCurrentConnectionInfo is supported.
        /// </summary>
        /// <remarks>The action's availability will be published in the device's service.xml.
        /// GetCurrentConnectionInfo must be overridden if this is called.</remarks>
        protected void EnableActionGetCurrentConnectionInfo()
        {
            OpenHome.Net.Core.Action action        = new OpenHome.Net.Core.Action("GetCurrentConnectionInfo");
            List <String>            allowedValues = new List <String>();

            action.AddInputParameter(new ParameterInt("ConnectionID"));
            action.AddOutputParameter(new ParameterInt("RcsID"));
            action.AddOutputParameter(new ParameterInt("AVTransportID"));
            action.AddOutputParameter(new ParameterString("ProtocolInfo", allowedValues));
            action.AddOutputParameter(new ParameterString("PeerConnectionManager", allowedValues));
            action.AddOutputParameter(new ParameterInt("PeerConnectionID"));
            allowedValues.Add("Input");
            allowedValues.Add("Output");
            action.AddOutputParameter(new ParameterString("Direction", allowedValues));
            allowedValues.Clear();
            allowedValues.Add("OK");
            allowedValues.Add("ContentFormatMismatch");
            allowedValues.Add("InsufficientBandwidth");
            allowedValues.Add("UnreliableChannel");
            allowedValues.Add("Unknown");
            action.AddOutputParameter(new ParameterString("Status", allowedValues));
            allowedValues.Clear();
            iDelegateGetCurrentConnectionInfo = new ActionDelegate(DoGetCurrentConnectionInfo);
            EnableAction(action, iDelegateGetCurrentConnectionInfo, GCHandle.ToIntPtr(iGch));
        }
 /// <summary>
 /// Signal that the action SetTarget is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetTarget must be overridden if this is called.</remarks>
 protected void EnableActionSetTarget()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetTarget");
     action.AddInputParameter(new ParameterBool("newTargetValue"));
     iDelegateSetTarget = new ActionDelegate(DoSetTarget);
     EnableAction(action, iDelegateSetTarget, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action Clear is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Clear must be overridden if this is called.</remarks>
 protected void EnableActionClear()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Clear");
     action.AddInputParameter(new ParameterUint("Id"));
     iDelegateClear = new ActionDelegate(DoClear);
     EnableAction(action, iDelegateClear, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action InvokeIndex is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// InvokeIndex must be overridden if this is called.</remarks>
 protected void EnableActionInvokeIndex()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("InvokeIndex");
     action.AddInputParameter(new ParameterUint("Index"));
     iDelegateInvokeIndex = new ActionDelegate(DoInvokeIndex);
     EnableAction(action, iDelegateInvokeIndex, GCHandle.ToIntPtr(iGch));
 }
Example #33
0
 /// <summary>
 /// Signal that the action GetColor is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetColor must be overridden if this is called.</remarks>
 protected void EnableActionGetColor()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetColor");
     action.AddInputParameter(new ParameterUint("Index"));
     action.AddOutputParameter(new ParameterUint("Color"));
     iDelegateGetColor = new ActionDelegate(DoGetColor);
     EnableAction(action, iDelegateGetColor, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action Unsubscribe is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// Unsubscribe must be overridden if this is called.</remarks>
 protected void EnableActionUnsubscribe()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("Unsubscribe");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterString("Sid", allowedValues));
     iDelegateUnsubscribe = new ActionDelegate(DoUnsubscribe);
     EnableAction(action, iDelegateUnsubscribe, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetPropertyUpdates is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetPropertyUpdates must be overridden if this is called.</remarks>
 protected void EnableActionGetPropertyUpdates()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetPropertyUpdates");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterString("ClientId", allowedValues));
     action.AddOutputParameter(new ParameterString("Updates", allowedValues));
     iDelegateGetPropertyUpdates = new ActionDelegate(DoGetPropertyUpdates);
     EnableAction(action, iDelegateGetPropertyUpdates, GCHandle.ToIntPtr(iGch));
 }
Example #36
0
 /// <summary>
 /// Signal that the action GetColorComponents is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetColorComponents must be overridden if this is called.</remarks>
 protected void EnableActionGetColorComponents()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetColorComponents");
     action.AddInputParameter(new ParameterUint("Color"));
     action.AddOutputParameter(new ParameterUint("Brightness"));
     action.AddOutputParameter(new ParameterUint("Red"));
     action.AddOutputParameter(new ParameterUint("Green"));
     action.AddOutputParameter(new ParameterUint("Blue"));
     iDelegateGetColorComponents = new ActionDelegate(DoGetColorComponents);
     EnableAction(action, iDelegateGetColorComponents, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyOpenhomeOrgSubscriptionLongPoll1(CpDevice aDevice)
            : base("openhome-org", "SubscriptionLongPoll", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSubscribe = new OpenHome.Net.Core.Action("Subscribe");
            param = new ParameterString("ClientId", allowedValues);
            iActionSubscribe.AddInputParameter(param);
            param = new ParameterString("Udn", allowedValues);
            iActionSubscribe.AddInputParameter(param);
            param = new ParameterString("Service", allowedValues);
            iActionSubscribe.AddInputParameter(param);
            param = new ParameterUint("RequestedDuration");
            iActionSubscribe.AddInputParameter(param);
            param = new ParameterString("Sid", allowedValues);
            iActionSubscribe.AddOutputParameter(param);
            param = new ParameterUint("Duration");
            iActionSubscribe.AddOutputParameter(param);

            iActionUnsubscribe = new OpenHome.Net.Core.Action("Unsubscribe");
            param = new ParameterString("Sid", allowedValues);
            iActionUnsubscribe.AddInputParameter(param);

            iActionRenew = new OpenHome.Net.Core.Action("Renew");
            param = new ParameterString("Sid", allowedValues);
            iActionRenew.AddInputParameter(param);
            param = new ParameterUint("RequestedDuration");
            iActionRenew.AddInputParameter(param);
            param = new ParameterUint("Duration");
            iActionRenew.AddOutputParameter(param);

            iActionGetPropertyUpdates = new OpenHome.Net.Core.Action("GetPropertyUpdates");
            param = new ParameterString("ClientId", allowedValues);
            iActionGetPropertyUpdates.AddInputParameter(param);
            param = new ParameterString("Updates", allowedValues);
            iActionGetPropertyUpdates.AddOutputParameter(param);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyOpenhomeOrgTestDimmableLight1(CpDevice aDevice)
            : base("openhome-org", "TestDimmableLight", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;

            iActionGetLevel = new OpenHome.Net.Core.Action("GetLevel");
            param = new ParameterUint("Level");
            iActionGetLevel.AddOutputParameter(param);

            iActionSetLevel = new OpenHome.Net.Core.Action("SetLevel");
            param = new ParameterUint("Level");
            iActionSetLevel.AddInputParameter(param);

            iA_ARG_Level = new PropertyUint("A_ARG_Level", A_ARG_LevelPropertyChanged);
            AddProperty(iA_ARG_Level);

            iPropertyLock = new Mutex();
        }
Example #39
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyUpnpOrgSwitchPower1(CpDevice aDevice)
            : base("schemas-upnp-org", "SwitchPower", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;

            iActionSetTarget = new OpenHome.Net.Core.Action("SetTarget");
            param = new ParameterBool("newTargetValue");
            iActionSetTarget.AddInputParameter(param);

            iActionGetTarget = new OpenHome.Net.Core.Action("GetTarget");
            param = new ParameterBool("RetTargetValue");
            iActionGetTarget.AddOutputParameter(param);

            iActionGetStatus = new OpenHome.Net.Core.Action("GetStatus");
            param = new ParameterBool("ResultStatus");
            iActionGetStatus.AddOutputParameter(param);

            iStatus = new PropertyBool("Status", StatusPropertyChanged);
            AddProperty(iStatus);

            iPropertyLock = new Mutex();
        }
 /// <summary>
 /// Signal that the action SelectPreset is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SelectPreset must be overridden if this is called.</remarks>
 protected void EnableActionSelectPreset()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SelectPreset");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterString("PresetName", allowedValues));
     iDelegateSelectPreset = new ActionDelegate(DoSelectPreset);
     EnableAction(action, iDelegateSelectPreset, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action ListPresets is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// ListPresets must be overridden if this is called.</remarks>
 protected void EnableActionListPresets()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("ListPresets");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddOutputParameter(new ParameterString("CurrentPresetNameList", allowedValues));
     iDelegateListPresets = new ActionDelegate(DoListPresets);
     EnableAction(action, iDelegateListPresets, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetCurrentConnectionInfo is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetCurrentConnectionInfo must be overridden if this is called.</remarks>
 protected void EnableActionGetCurrentConnectionInfo()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetCurrentConnectionInfo");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterInt("ConnectionID"));
     action.AddOutputParameter(new ParameterInt("RcsID"));
     action.AddOutputParameter(new ParameterInt("AVTransportID"));
     action.AddOutputParameter(new ParameterString("ProtocolInfo", allowedValues));
     action.AddOutputParameter(new ParameterString("PeerConnectionManager", allowedValues));
     action.AddOutputParameter(new ParameterInt("PeerConnectionID"));
     allowedValues.Add("Input");
     allowedValues.Add("Output");
     action.AddOutputParameter(new ParameterString("Direction", allowedValues));
     allowedValues.Clear();
     allowedValues.Add("OK");
     allowedValues.Add("ContentFormatMismatch");
     allowedValues.Add("InsufficientBandwidth");
     allowedValues.Add("UnreliableChannel");
     allowedValues.Add("Unknown");
     action.AddOutputParameter(new ParameterString("Status", allowedValues));
     allowedValues.Clear();
     iDelegateGetCurrentConnectionInfo = new ActionDelegate(DoGetCurrentConnectionInfo);
     EnableAction(action, iDelegateGetCurrentConnectionInfo, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetVolumeDB is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetVolumeDB must be overridden if this is called.</remarks>
 protected void EnableActionSetVolumeDB()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetVolumeDB");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterString("Channel", allowedValues));
     action.AddInputParameter(new ParameterInt("DesiredVolume"));
     iDelegateSetVolumeDB = new ActionDelegate(DoSetVolumeDB);
     EnableAction(action, iDelegateSetVolumeDB, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetStateVariables is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetStateVariables must be overridden if this is called.</remarks>
 protected void EnableActionSetStateVariables()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetStateVariables");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterString("RenderingControlUDN", allowedValues));
     action.AddInputParameter(new ParameterString("ServiceType", allowedValues));
     action.AddInputParameter(new ParameterString("ServiceId", allowedValues));
     action.AddInputParameter(new ParameterString("StateVariableValuePairs", allowedValues));
     action.AddOutputParameter(new ParameterString("StateVariableList", allowedValues));
     iDelegateSetStateVariables = new ActionDelegate(DoSetStateVariables);
     EnableAction(action, iDelegateSetStateVariables, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetRedVideoGain is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetRedVideoGain must be overridden if this is called.</remarks>
 protected void EnableActionSetRedVideoGain()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetRedVideoGain");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterUint("DesiredRedVideoGain", 0, 2147483647, 1));
     iDelegateSetRedVideoGain = new ActionDelegate(DoSetRedVideoGain);
     EnableAction(action, iDelegateSetRedVideoGain, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetBrightness is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetBrightness must be overridden if this is called.</remarks>
 protected void EnableActionGetBrightness()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetBrightness");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddOutputParameter(new ParameterUint("CurrentBrightness", 0, 2147483647, 1));
     iDelegateGetBrightness = new ActionDelegate(DoGetBrightness);
     EnableAction(action, iDelegateGetBrightness, GCHandle.ToIntPtr(iGch));
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyUpnpOrgRenderingControl1(CpDevice aDevice)
            : base("schemas-upnp-org", "RenderingControl", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionListPresets = new OpenHome.Net.Core.Action("ListPresets");
            param = new ParameterUint("InstanceID");
            iActionListPresets.AddInputParameter(param);
            param = new ParameterString("CurrentPresetNameList", allowedValues);
            iActionListPresets.AddOutputParameter(param);

            iActionSelectPreset = new OpenHome.Net.Core.Action("SelectPreset");
            param = new ParameterUint("InstanceID");
            iActionSelectPreset.AddInputParameter(param);
            param = new ParameterString("PresetName", allowedValues);
            iActionSelectPreset.AddInputParameter(param);

            iActionGetBrightness = new OpenHome.Net.Core.Action("GetBrightness");
            param = new ParameterUint("InstanceID");
            iActionGetBrightness.AddInputParameter(param);
            param = new ParameterUint("CurrentBrightness", 0, 2147483647, 1);
            iActionGetBrightness.AddOutputParameter(param);

            iActionSetBrightness = new OpenHome.Net.Core.Action("SetBrightness");
            param = new ParameterUint("InstanceID");
            iActionSetBrightness.AddInputParameter(param);
            param = new ParameterUint("DesiredBrightness", 0, 2147483647, 1);
            iActionSetBrightness.AddInputParameter(param);

            iActionGetContrast = new OpenHome.Net.Core.Action("GetContrast");
            param = new ParameterUint("InstanceID");
            iActionGetContrast.AddInputParameter(param);
            param = new ParameterUint("CurrentContrast", 0, 2147483647, 1);
            iActionGetContrast.AddOutputParameter(param);

            iActionSetContrast = new OpenHome.Net.Core.Action("SetContrast");
            param = new ParameterUint("InstanceID");
            iActionSetContrast.AddInputParameter(param);
            param = new ParameterUint("DesiredContrast", 0, 2147483647, 1);
            iActionSetContrast.AddInputParameter(param);

            iActionGetSharpness = new OpenHome.Net.Core.Action("GetSharpness");
            param = new ParameterUint("InstanceID");
            iActionGetSharpness.AddInputParameter(param);
            param = new ParameterUint("CurrentSharpness", 0, 2147483647, 1);
            iActionGetSharpness.AddOutputParameter(param);

            iActionSetSharpness = new OpenHome.Net.Core.Action("SetSharpness");
            param = new ParameterUint("InstanceID");
            iActionSetSharpness.AddInputParameter(param);
            param = new ParameterUint("DesiredSharpness", 0, 2147483647, 1);
            iActionSetSharpness.AddInputParameter(param);

            iActionGetRedVideoGain = new OpenHome.Net.Core.Action("GetRedVideoGain");
            param = new ParameterUint("InstanceID");
            iActionGetRedVideoGain.AddInputParameter(param);
            param = new ParameterUint("CurrentRedVideoGain", 0, 2147483647, 1);
            iActionGetRedVideoGain.AddOutputParameter(param);

            iActionSetRedVideoGain = new OpenHome.Net.Core.Action("SetRedVideoGain");
            param = new ParameterUint("InstanceID");
            iActionSetRedVideoGain.AddInputParameter(param);
            param = new ParameterUint("DesiredRedVideoGain", 0, 2147483647, 1);
            iActionSetRedVideoGain.AddInputParameter(param);

            iActionGetGreenVideoGain = new OpenHome.Net.Core.Action("GetGreenVideoGain");
            param = new ParameterUint("InstanceID");
            iActionGetGreenVideoGain.AddInputParameter(param);
            param = new ParameterUint("CurrentGreenVideoGain", 0, 2147483647, 1);
            iActionGetGreenVideoGain.AddOutputParameter(param);

            iActionSetGreenVideoGain = new OpenHome.Net.Core.Action("SetGreenVideoGain");
            param = new ParameterUint("InstanceID");
            iActionSetGreenVideoGain.AddInputParameter(param);
            param = new ParameterUint("DesiredGreenVideoGain", 0, 2147483647, 1);
            iActionSetGreenVideoGain.AddInputParameter(param);

            iActionGetBlueVideoGain = new OpenHome.Net.Core.Action("GetBlueVideoGain");
            param = new ParameterUint("InstanceID");
            iActionGetBlueVideoGain.AddInputParameter(param);
            param = new ParameterUint("CurrentBlueVideoGain", 0, 2147483647, 1);
            iActionGetBlueVideoGain.AddOutputParameter(param);

            iActionSetBlueVideoGain = new OpenHome.Net.Core.Action("SetBlueVideoGain");
            param = new ParameterUint("InstanceID");
            iActionSetBlueVideoGain.AddInputParameter(param);
            param = new ParameterUint("DesiredBlueVideoGain", 0, 2147483647, 1);
            iActionSetBlueVideoGain.AddInputParameter(param);

            iActionGetRedVideoBlackLevel = new OpenHome.Net.Core.Action("GetRedVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionGetRedVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("CurrentRedVideoBlackLevel", 0, 2147483647, 1);
            iActionGetRedVideoBlackLevel.AddOutputParameter(param);

            iActionSetRedVideoBlackLevel = new OpenHome.Net.Core.Action("SetRedVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionSetRedVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("DesiredRedVideoBlackLevel", 0, 2147483647, 1);
            iActionSetRedVideoBlackLevel.AddInputParameter(param);

            iActionGetGreenVideoBlackLevel = new OpenHome.Net.Core.Action("GetGreenVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionGetGreenVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("CurrentGreenVideoBlackLevel", 0, 2147483647, 1);
            iActionGetGreenVideoBlackLevel.AddOutputParameter(param);

            iActionSetGreenVideoBlackLevel = new OpenHome.Net.Core.Action("SetGreenVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionSetGreenVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("DesiredGreenVideoBlackLevel", 0, 2147483647, 1);
            iActionSetGreenVideoBlackLevel.AddInputParameter(param);

            iActionGetBlueVideoBlackLevel = new OpenHome.Net.Core.Action("GetBlueVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionGetBlueVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("CurrentBlueVideoBlackLevel", 0, 2147483647, 1);
            iActionGetBlueVideoBlackLevel.AddOutputParameter(param);

            iActionSetBlueVideoBlackLevel = new OpenHome.Net.Core.Action("SetBlueVideoBlackLevel");
            param = new ParameterUint("InstanceID");
            iActionSetBlueVideoBlackLevel.AddInputParameter(param);
            param = new ParameterUint("DesiredBlueVideoBlackLevel", 0, 2147483647, 1);
            iActionSetBlueVideoBlackLevel.AddInputParameter(param);

            iActionGetColorTemperature = new OpenHome.Net.Core.Action("GetColorTemperature");
            param = new ParameterUint("InstanceID");
            iActionGetColorTemperature.AddInputParameter(param);
            param = new ParameterUint("CurrentColorTemperature", 0, 2147483647, 1);
            iActionGetColorTemperature.AddOutputParameter(param);

            iActionSetColorTemperature = new OpenHome.Net.Core.Action("SetColorTemperature");
            param = new ParameterUint("InstanceID");
            iActionSetColorTemperature.AddInputParameter(param);
            param = new ParameterUint("DesiredColorTemperature", 0, 2147483647, 1);
            iActionSetColorTemperature.AddInputParameter(param);

            iActionGetHorizontalKeystone = new OpenHome.Net.Core.Action("GetHorizontalKeystone");
            param = new ParameterUint("InstanceID");
            iActionGetHorizontalKeystone.AddInputParameter(param);
            param = new ParameterInt("CurrentHorizontalKeystone");
            iActionGetHorizontalKeystone.AddOutputParameter(param);

            iActionSetHorizontalKeystone = new OpenHome.Net.Core.Action("SetHorizontalKeystone");
            param = new ParameterUint("InstanceID");
            iActionSetHorizontalKeystone.AddInputParameter(param);
            param = new ParameterInt("DesiredHorizontalKeystone");
            iActionSetHorizontalKeystone.AddInputParameter(param);

            iActionGetVerticalKeystone = new OpenHome.Net.Core.Action("GetVerticalKeystone");
            param = new ParameterUint("InstanceID");
            iActionGetVerticalKeystone.AddInputParameter(param);
            param = new ParameterInt("CurrentVerticalKeystone");
            iActionGetVerticalKeystone.AddOutputParameter(param);

            iActionSetVerticalKeystone = new OpenHome.Net.Core.Action("SetVerticalKeystone");
            param = new ParameterUint("InstanceID");
            iActionSetVerticalKeystone.AddInputParameter(param);
            param = new ParameterInt("DesiredVerticalKeystone");
            iActionSetVerticalKeystone.AddInputParameter(param);

            iActionGetMute = new OpenHome.Net.Core.Action("GetMute");
            param = new ParameterUint("InstanceID");
            iActionGetMute.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionGetMute.AddInputParameter(param);
            param = new ParameterBool("CurrentMute");
            iActionGetMute.AddOutputParameter(param);

            iActionSetMute = new OpenHome.Net.Core.Action("SetMute");
            param = new ParameterUint("InstanceID");
            iActionSetMute.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionSetMute.AddInputParameter(param);
            param = new ParameterBool("DesiredMute");
            iActionSetMute.AddInputParameter(param);

            iActionGetVolume = new OpenHome.Net.Core.Action("GetVolume");
            param = new ParameterUint("InstanceID");
            iActionGetVolume.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionGetVolume.AddInputParameter(param);
            param = new ParameterUint("CurrentVolume", 0, 2147483647, 1);
            iActionGetVolume.AddOutputParameter(param);

            iActionSetVolume = new OpenHome.Net.Core.Action("SetVolume");
            param = new ParameterUint("InstanceID");
            iActionSetVolume.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionSetVolume.AddInputParameter(param);
            param = new ParameterUint("DesiredVolume", 0, 2147483647, 1);
            iActionSetVolume.AddInputParameter(param);

            iActionGetVolumeDB = new OpenHome.Net.Core.Action("GetVolumeDB");
            param = new ParameterUint("InstanceID");
            iActionGetVolumeDB.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionGetVolumeDB.AddInputParameter(param);
            param = new ParameterInt("CurrentVolume");
            iActionGetVolumeDB.AddOutputParameter(param);

            iActionSetVolumeDB = new OpenHome.Net.Core.Action("SetVolumeDB");
            param = new ParameterUint("InstanceID");
            iActionSetVolumeDB.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionSetVolumeDB.AddInputParameter(param);
            param = new ParameterInt("DesiredVolume");
            iActionSetVolumeDB.AddInputParameter(param);

            iActionGetVolumeDBRange = new OpenHome.Net.Core.Action("GetVolumeDBRange");
            param = new ParameterUint("InstanceID");
            iActionGetVolumeDBRange.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionGetVolumeDBRange.AddInputParameter(param);
            param = new ParameterInt("MinValue");
            iActionGetVolumeDBRange.AddOutputParameter(param);
            param = new ParameterInt("MaxValue");
            iActionGetVolumeDBRange.AddOutputParameter(param);

            iActionGetLoudness = new OpenHome.Net.Core.Action("GetLoudness");
            param = new ParameterUint("InstanceID");
            iActionGetLoudness.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionGetLoudness.AddInputParameter(param);
            param = new ParameterBool("CurrentLoudness");
            iActionGetLoudness.AddOutputParameter(param);

            iActionSetLoudness = new OpenHome.Net.Core.Action("SetLoudness");
            param = new ParameterUint("InstanceID");
            iActionSetLoudness.AddInputParameter(param);
            param = new ParameterString("Channel", allowedValues);
            iActionSetLoudness.AddInputParameter(param);
            param = new ParameterBool("DesiredLoudness");
            iActionSetLoudness.AddInputParameter(param);

            iLastChange = new PropertyString("LastChange", LastChangePropertyChanged);
            AddProperty(iLastChange);

            iPropertyLock = new Mutex();
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyUpnpOrgScheduledRecording2(CpDevice aDevice)
            : base("schemas-upnp-org", "ScheduledRecording", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionGetSortCapabilities = new OpenHome.Net.Core.Action("GetSortCapabilities");
            param = new ParameterString("SortCaps", allowedValues);
            iActionGetSortCapabilities.AddOutputParameter(param);
            param = new ParameterUint("SortLevelCap");
            iActionGetSortCapabilities.AddOutputParameter(param);

            iActionGetPropertyList = new OpenHome.Net.Core.Action("GetPropertyList");
            allowedValues.Add("A_ARG_TYPE_RecordSchedule");
            allowedValues.Add("A_ARG_TYPE_RecordTask");
            allowedValues.Add("A_ARG_TYPE_RecordScheduleParts");
            param = new ParameterString("DataTypeID", allowedValues);
            iActionGetPropertyList.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("PropertyList", allowedValues);
            iActionGetPropertyList.AddOutputParameter(param);

            iActionGetAllowedValues = new OpenHome.Net.Core.Action("GetAllowedValues");
            allowedValues.Add("A_ARG_TYPE_RecordSchedule");
            allowedValues.Add("A_ARG_TYPE_RecordTask");
            allowedValues.Add("A_ARG_TYPE_RecordScheduleParts");
            param = new ParameterString("DataTypeID", allowedValues);
            iActionGetAllowedValues.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Filter", allowedValues);
            iActionGetAllowedValues.AddInputParameter(param);
            param = new ParameterString("PropertyInfo", allowedValues);
            iActionGetAllowedValues.AddOutputParameter(param);

            iActionGetStateUpdateID = new OpenHome.Net.Core.Action("GetStateUpdateID");
            param = new ParameterUint("Id");
            iActionGetStateUpdateID.AddOutputParameter(param);

            iActionBrowseRecordSchedules = new OpenHome.Net.Core.Action("BrowseRecordSchedules");
            param = new ParameterString("Filter", allowedValues);
            iActionBrowseRecordSchedules.AddInputParameter(param);
            param = new ParameterUint("StartingIndex");
            iActionBrowseRecordSchedules.AddInputParameter(param);
            param = new ParameterUint("RequestedCount");
            iActionBrowseRecordSchedules.AddInputParameter(param);
            param = new ParameterString("SortCriteria", allowedValues);
            iActionBrowseRecordSchedules.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionBrowseRecordSchedules.AddOutputParameter(param);
            param = new ParameterUint("NumberReturned");
            iActionBrowseRecordSchedules.AddOutputParameter(param);
            param = new ParameterUint("TotalMatches");
            iActionBrowseRecordSchedules.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionBrowseRecordSchedules.AddOutputParameter(param);

            iActionBrowseRecordTasks = new OpenHome.Net.Core.Action("BrowseRecordTasks");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionBrowseRecordTasks.AddInputParameter(param);
            param = new ParameterString("Filter", allowedValues);
            iActionBrowseRecordTasks.AddInputParameter(param);
            param = new ParameterUint("StartingIndex");
            iActionBrowseRecordTasks.AddInputParameter(param);
            param = new ParameterUint("RequestedCount");
            iActionBrowseRecordTasks.AddInputParameter(param);
            param = new ParameterString("SortCriteria", allowedValues);
            iActionBrowseRecordTasks.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionBrowseRecordTasks.AddOutputParameter(param);
            param = new ParameterUint("NumberReturned");
            iActionBrowseRecordTasks.AddOutputParameter(param);
            param = new ParameterUint("TotalMatches");
            iActionBrowseRecordTasks.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionBrowseRecordTasks.AddOutputParameter(param);

            iActionCreateRecordSchedule = new OpenHome.Net.Core.Action("CreateRecordSchedule");
            param = new ParameterString("Elements", allowedValues);
            iActionCreateRecordSchedule.AddInputParameter(param);
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionCreateRecordSchedule.AddOutputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionCreateRecordSchedule.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionCreateRecordSchedule.AddOutputParameter(param);

            iActionDeleteRecordSchedule = new OpenHome.Net.Core.Action("DeleteRecordSchedule");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionDeleteRecordSchedule.AddInputParameter(param);

            iActionGetRecordSchedule = new OpenHome.Net.Core.Action("GetRecordSchedule");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionGetRecordSchedule.AddInputParameter(param);
            param = new ParameterString("Filter", allowedValues);
            iActionGetRecordSchedule.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionGetRecordSchedule.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionGetRecordSchedule.AddOutputParameter(param);

            iActionEnableRecordSchedule = new OpenHome.Net.Core.Action("EnableRecordSchedule");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionEnableRecordSchedule.AddInputParameter(param);

            iActionDisableRecordSchedule = new OpenHome.Net.Core.Action("DisableRecordSchedule");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionDisableRecordSchedule.AddInputParameter(param);

            iActionDeleteRecordTask = new OpenHome.Net.Core.Action("DeleteRecordTask");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionDeleteRecordTask.AddInputParameter(param);

            iActionGetRecordTask = new OpenHome.Net.Core.Action("GetRecordTask");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionGetRecordTask.AddInputParameter(param);
            param = new ParameterString("Filter", allowedValues);
            iActionGetRecordTask.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionGetRecordTask.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionGetRecordTask.AddOutputParameter(param);

            iActionEnableRecordTask = new OpenHome.Net.Core.Action("EnableRecordTask");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionEnableRecordTask.AddInputParameter(param);

            iActionDisableRecordTask = new OpenHome.Net.Core.Action("DisableRecordTask");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionDisableRecordTask.AddInputParameter(param);

            iActionResetRecordTask = new OpenHome.Net.Core.Action("ResetRecordTask");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionResetRecordTask.AddInputParameter(param);

            iActionGetRecordScheduleConflicts = new OpenHome.Net.Core.Action("GetRecordScheduleConflicts");
            param = new ParameterString("RecordScheduleID", allowedValues);
            iActionGetRecordScheduleConflicts.AddInputParameter(param);
            param = new ParameterString("RecordScheduleConflictIDList", allowedValues);
            iActionGetRecordScheduleConflicts.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionGetRecordScheduleConflicts.AddOutputParameter(param);

            iActionGetRecordTaskConflicts = new OpenHome.Net.Core.Action("GetRecordTaskConflicts");
            param = new ParameterString("RecordTaskID", allowedValues);
            iActionGetRecordTaskConflicts.AddInputParameter(param);
            param = new ParameterString("RecordTaskConflictIDList", allowedValues);
            iActionGetRecordTaskConflicts.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionGetRecordTaskConflicts.AddOutputParameter(param);

            iLastChange = new PropertyString("LastChange", LastChangePropertyChanged);
            AddProperty(iLastChange);

            iPropertyLock = new Mutex();
        }
Example #49
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <remarks>Use CpProxy::[Un]Subscribe() to enable/disable querying of state variable and reporting of their changes.</remarks>
        /// <param name="aDevice">The device to use</param>
        public CpProxyAvOpenhomeOrgProduct1(CpDevice aDevice)
            : base("av-openhome-org", "Product", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionManufacturer = new OpenHome.Net.Core.Action("Manufacturer");
            param = new ParameterString("Name", allowedValues);
            iActionManufacturer.AddOutputParameter(param);
            param = new ParameterString("Info", allowedValues);
            iActionManufacturer.AddOutputParameter(param);
            param = new ParameterString("Url", allowedValues);
            iActionManufacturer.AddOutputParameter(param);
            param = new ParameterString("ImageUri", allowedValues);
            iActionManufacturer.AddOutputParameter(param);

            iActionModel = new OpenHome.Net.Core.Action("Model");
            param = new ParameterString("Name", allowedValues);
            iActionModel.AddOutputParameter(param);
            param = new ParameterString("Info", allowedValues);
            iActionModel.AddOutputParameter(param);
            param = new ParameterString("Url", allowedValues);
            iActionModel.AddOutputParameter(param);
            param = new ParameterString("ImageUri", allowedValues);
            iActionModel.AddOutputParameter(param);

            iActionProduct = new OpenHome.Net.Core.Action("Product");
            param = new ParameterString("Room", allowedValues);
            iActionProduct.AddOutputParameter(param);
            param = new ParameterString("Name", allowedValues);
            iActionProduct.AddOutputParameter(param);
            param = new ParameterString("Info", allowedValues);
            iActionProduct.AddOutputParameter(param);
            param = new ParameterString("Url", allowedValues);
            iActionProduct.AddOutputParameter(param);
            param = new ParameterString("ImageUri", allowedValues);
            iActionProduct.AddOutputParameter(param);

            iActionStandby = new OpenHome.Net.Core.Action("Standby");
            param = new ParameterBool("Value");
            iActionStandby.AddOutputParameter(param);

            iActionSetStandby = new OpenHome.Net.Core.Action("SetStandby");
            param = new ParameterBool("Value");
            iActionSetStandby.AddInputParameter(param);

            iActionSourceCount = new OpenHome.Net.Core.Action("SourceCount");
            param = new ParameterUint("Value");
            iActionSourceCount.AddOutputParameter(param);

            iActionSourceXml = new OpenHome.Net.Core.Action("SourceXml");
            param = new ParameterString("Value", allowedValues);
            iActionSourceXml.AddOutputParameter(param);

            iActionSourceIndex = new OpenHome.Net.Core.Action("SourceIndex");
            param = new ParameterUint("Value");
            iActionSourceIndex.AddOutputParameter(param);

            iActionSetSourceIndex = new OpenHome.Net.Core.Action("SetSourceIndex");
            param = new ParameterUint("Value");
            iActionSetSourceIndex.AddInputParameter(param);

            iActionSetSourceIndexByName = new OpenHome.Net.Core.Action("SetSourceIndexByName");
            param = new ParameterString("Value", allowedValues);
            iActionSetSourceIndexByName.AddInputParameter(param);

            iActionSource = new OpenHome.Net.Core.Action("Source");
            param = new ParameterUint("Index");
            iActionSource.AddInputParameter(param);
            param = new ParameterString("SystemName", allowedValues);
            iActionSource.AddOutputParameter(param);
            param = new ParameterString("Type", allowedValues);
            iActionSource.AddOutputParameter(param);
            param = new ParameterString("Name", allowedValues);
            iActionSource.AddOutputParameter(param);
            param = new ParameterBool("Visible");
            iActionSource.AddOutputParameter(param);

            iActionAttributes = new OpenHome.Net.Core.Action("Attributes");
            param = new ParameterString("Value", allowedValues);
            iActionAttributes.AddOutputParameter(param);

            iActionSourceXmlChangeCount = new OpenHome.Net.Core.Action("SourceXmlChangeCount");
            param = new ParameterUint("Value");
            iActionSourceXmlChangeCount.AddOutputParameter(param);

            iManufacturerName = new PropertyString("ManufacturerName", ManufacturerNamePropertyChanged);
            AddProperty(iManufacturerName);
            iManufacturerInfo = new PropertyString("ManufacturerInfo", ManufacturerInfoPropertyChanged);
            AddProperty(iManufacturerInfo);
            iManufacturerUrl = new PropertyString("ManufacturerUrl", ManufacturerUrlPropertyChanged);
            AddProperty(iManufacturerUrl);
            iManufacturerImageUri = new PropertyString("ManufacturerImageUri", ManufacturerImageUriPropertyChanged);
            AddProperty(iManufacturerImageUri);
            iModelName = new PropertyString("ModelName", ModelNamePropertyChanged);
            AddProperty(iModelName);
            iModelInfo = new PropertyString("ModelInfo", ModelInfoPropertyChanged);
            AddProperty(iModelInfo);
            iModelUrl = new PropertyString("ModelUrl", ModelUrlPropertyChanged);
            AddProperty(iModelUrl);
            iModelImageUri = new PropertyString("ModelImageUri", ModelImageUriPropertyChanged);
            AddProperty(iModelImageUri);
            iProductRoom = new PropertyString("ProductRoom", ProductRoomPropertyChanged);
            AddProperty(iProductRoom);
            iProductName = new PropertyString("ProductName", ProductNamePropertyChanged);
            AddProperty(iProductName);
            iProductInfo = new PropertyString("ProductInfo", ProductInfoPropertyChanged);
            AddProperty(iProductInfo);
            iProductUrl = new PropertyString("ProductUrl", ProductUrlPropertyChanged);
            AddProperty(iProductUrl);
            iProductImageUri = new PropertyString("ProductImageUri", ProductImageUriPropertyChanged);
            AddProperty(iProductImageUri);
            iStandby = new PropertyBool("Standby", StandbyPropertyChanged);
            AddProperty(iStandby);
            iSourceIndex = new PropertyUint("SourceIndex", SourceIndexPropertyChanged);
            AddProperty(iSourceIndex);
            iSourceCount = new PropertyUint("SourceCount", SourceCountPropertyChanged);
            AddProperty(iSourceCount);
            iSourceXml = new PropertyString("SourceXml", SourceXmlPropertyChanged);
            AddProperty(iSourceXml);
            iAttributes = new PropertyString("Attributes", AttributesPropertyChanged);
            AddProperty(iAttributes);

            iPropertyLock = new Mutex();
        }
 /// <summary>
 /// Signal that the action SetColorTemperature is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetColorTemperature must be overridden if this is called.</remarks>
 protected void EnableActionSetColorTemperature()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetColorTemperature");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterUint("DesiredColorTemperature", 0, 2147483647, 1));
     iDelegateSetColorTemperature = new ActionDelegate(DoSetColorTemperature);
     EnableAction(action, iDelegateSetColorTemperature, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetGreenVideoBlackLevel is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetGreenVideoBlackLevel must be overridden if this is called.</remarks>
 protected void EnableActionSetGreenVideoBlackLevel()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetGreenVideoBlackLevel");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterUint("DesiredGreenVideoBlackLevel", 0, 2147483647, 1));
     iDelegateSetGreenVideoBlackLevel = new ActionDelegate(DoSetGreenVideoBlackLevel);
     EnableAction(action, iDelegateSetGreenVideoBlackLevel, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetGreenVideoGain is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetGreenVideoGain must be overridden if this is called.</remarks>
 protected void EnableActionGetGreenVideoGain()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetGreenVideoGain");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddOutputParameter(new ParameterUint("CurrentGreenVideoGain", 0, 2147483647, 1));
     iDelegateGetGreenVideoGain = new ActionDelegate(DoGetGreenVideoGain);
     EnableAction(action, iDelegateGetGreenVideoGain, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetSharpness is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetSharpness must be overridden if this is called.</remarks>
 protected void EnableActionSetSharpness()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetSharpness");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterUint("DesiredSharpness", 0, 2147483647, 1));
     iDelegateSetSharpness = new ActionDelegate(DoSetSharpness);
     EnableAction(action, iDelegateSetSharpness, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetHorizontalKeystone is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetHorizontalKeystone must be overridden if this is called.</remarks>
 protected void EnableActionGetHorizontalKeystone()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetHorizontalKeystone");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddOutputParameter(new ParameterInt("CurrentHorizontalKeystone"));
     iDelegateGetHorizontalKeystone = new ActionDelegate(DoGetHorizontalKeystone);
     EnableAction(action, iDelegateGetHorizontalKeystone, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action SetVerticalKeystone is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// SetVerticalKeystone must be overridden if this is called.</remarks>
 protected void EnableActionSetVerticalKeystone()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("SetVerticalKeystone");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterInt("DesiredVerticalKeystone"));
     iDelegateSetVerticalKeystone = new ActionDelegate(DoSetVerticalKeystone);
     EnableAction(action, iDelegateSetVerticalKeystone, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetLoudness is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetLoudness must be overridden if this is called.</remarks>
 protected void EnableActionGetLoudness()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetLoudness");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterString("Channel", allowedValues));
     action.AddOutputParameter(new ParameterBool("CurrentLoudness"));
     iDelegateGetLoudness = new ActionDelegate(DoGetLoudness);
     EnableAction(action, iDelegateGetLoudness, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action ConnectionComplete is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// ConnectionComplete must be overridden if this is called.</remarks>
 protected void EnableActionConnectionComplete()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("ConnectionComplete");
     action.AddInputParameter(new ParameterInt("ConnectionID"));
     iDelegateConnectionComplete = new ActionDelegate(DoConnectionComplete);
     EnableAction(action, iDelegateConnectionComplete, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetRedVideoBlackLevel is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetRedVideoBlackLevel must be overridden if this is called.</remarks>
 protected void EnableActionGetRedVideoBlackLevel()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetRedVideoBlackLevel");
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddOutputParameter(new ParameterUint("CurrentRedVideoBlackLevel", 0, 2147483647, 1));
     iDelegateGetRedVideoBlackLevel = new ActionDelegate(DoGetRedVideoBlackLevel);
     EnableAction(action, iDelegateGetRedVideoBlackLevel, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action PrepareForConnection is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// PrepareForConnection must be overridden if this is called.</remarks>
 protected void EnableActionPrepareForConnection()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("PrepareForConnection");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterString("RemoteProtocolInfo", allowedValues));
     action.AddInputParameter(new ParameterString("PeerConnectionManager", allowedValues));
     action.AddInputParameter(new ParameterInt("PeerConnectionID"));
     allowedValues.Add("Input");
     allowedValues.Add("Output");
     action.AddInputParameter(new ParameterString("Direction", allowedValues));
     allowedValues.Clear();
     action.AddOutputParameter(new ParameterInt("ConnectionID"));
     action.AddOutputParameter(new ParameterInt("AVTransportID"));
     action.AddOutputParameter(new ParameterInt("RcsID"));
     iDelegatePrepareForConnection = new ActionDelegate(DoPrepareForConnection);
     EnableAction(action, iDelegatePrepareForConnection, GCHandle.ToIntPtr(iGch));
 }
 /// <summary>
 /// Signal that the action GetVolumeDBRange is supported.
 /// </summary>
 /// <remarks>The action's availability will be published in the device's service.xml.
 /// GetVolumeDBRange must be overridden if this is called.</remarks>
 protected void EnableActionGetVolumeDBRange()
 {
     OpenHome.Net.Core.Action action = new OpenHome.Net.Core.Action("GetVolumeDBRange");
     List<String> allowedValues = new List<String>();
     action.AddInputParameter(new ParameterUint("InstanceID"));
     action.AddInputParameter(new ParameterString("Channel", allowedValues));
     action.AddOutputParameter(new ParameterInt("MinValue"));
     action.AddOutputParameter(new ParameterInt("MaxValue"));
     iDelegateGetVolumeDBRange = new ActionDelegate(DoGetVolumeDBRange);
     EnableAction(action, iDelegateGetVolumeDBRange, GCHandle.ToIntPtr(iGch));
 }