String type parameter. Only intended for use by auto-generated proxies and providers.
상속: Parameter
        /// <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 CpProxyAvOpenhomeOrgNetworkMonitor1(CpDevice aDevice)
            : base("av-openhome-org", "NetworkMonitor", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

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

            iActionPorts = new OpenHome.Net.Core.Action("Ports");
            param = new ParameterUint("Sender");
            iActionPorts.AddOutputParameter(param);
            param = new ParameterUint("Receiver");
            iActionPorts.AddOutputParameter(param);
            param = new ParameterUint("Results");
            iActionPorts.AddOutputParameter(param);

            iName = new PropertyString("Name", NamePropertyChanged);
            AddProperty(iName);
            iSender = new PropertyUint("Sender", SenderPropertyChanged);
            AddProperty(iSender);
            iReceiver = new PropertyUint("Receiver", ReceiverPropertyChanged);
            AddProperty(iReceiver);
            iResults = new PropertyUint("Results", ResultsPropertyChanged);
            AddProperty(iResults);

            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 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 CpProxyAvOpenhomeOrgCredentials1(CpDevice aDevice)
            : base("av-openhome-org", "Credentials", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSet = new OpenHome.Net.Core.Action("Set");
            param = new ParameterString("Id", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterString("UserName", allowedValues);
            iActionSet.AddInputParameter(param);
            param = new ParameterBinary("Password");
            iActionSet.AddInputParameter(param);

            iActionClear = new OpenHome.Net.Core.Action("Clear");
            param = new ParameterString("Id", allowedValues);
            iActionClear.AddInputParameter(param);

            iActionSetEnabled = new OpenHome.Net.Core.Action("SetEnabled");
            param = new ParameterString("Id", allowedValues);
            iActionSetEnabled.AddInputParameter(param);
            param = new ParameterBool("Enabled");
            iActionSetEnabled.AddInputParameter(param);

            iActionGet = new OpenHome.Net.Core.Action("Get");
            param = new ParameterString("Id", allowedValues);
            iActionGet.AddInputParameter(param);
            param = new ParameterString("UserName", allowedValues);
            iActionGet.AddOutputParameter(param);
            param = new ParameterBinary("Password");
            iActionGet.AddOutputParameter(param);
            param = new ParameterBool("Enabled");
            iActionGet.AddOutputParameter(param);
            param = new ParameterString("Status", allowedValues);
            iActionGet.AddOutputParameter(param);
            param = new ParameterString("Data", allowedValues);
            iActionGet.AddOutputParameter(param);

            iActionLogin = new OpenHome.Net.Core.Action("Login");
            param = new ParameterString("Id", allowedValues);
            iActionLogin.AddInputParameter(param);
            param = new ParameterString("Token", allowedValues);
            iActionLogin.AddOutputParameter(param);

            iActionReLogin = new OpenHome.Net.Core.Action("ReLogin");
            param = new ParameterString("Id", allowedValues);
            iActionReLogin.AddInputParameter(param);
            param = new ParameterString("CurrentToken", allowedValues);
            iActionReLogin.AddInputParameter(param);
            param = new ParameterString("NewToken", allowedValues);
            iActionReLogin.AddOutputParameter(param);

            iActionGetIds = new OpenHome.Net.Core.Action("GetIds");
            param = new ParameterString("Ids", allowedValues);
            iActionGetIds.AddOutputParameter(param);

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

            iActionGetSequenceNumber = new OpenHome.Net.Core.Action("GetSequenceNumber");
            param = new ParameterUint("SequenceNumber");
            iActionGetSequenceNumber.AddOutputParameter(param);

            iIds = new PropertyString("Ids", IdsPropertyChanged);
            AddProperty(iIds);
            iPublicKey = new PropertyString("PublicKey", PublicKeyPropertyChanged);
            AddProperty(iPublicKey);
            iSequenceNumber = new PropertyUint("SequenceNumber", SequenceNumberPropertyChanged);
            AddProperty(iSequenceNumber);

            iPropertyLock = new Mutex();
        }
예제 #4
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 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();
        }
예제 #5
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 CpProxyOpenhomeOrgTestLights1(CpDevice 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);
        }
예제 #6
0
파일: CpService.cs 프로젝트: broonie/ohNet
 /// <summary>
 /// Constructor for string output argument for an action
 /// </summary>
 /// <remarks>Intended to be created without any value.  The value is later set after
 /// CpService.InvokeAction is called but before the invocation's callback is run)</remarks>
 /// <param name="aParameter">Defines the name plus any bounds to the value for the argument.
 /// Must have been previously added to the action using Action.AddOutputParameter</param>
 public ArgumentString(ParameterString aParameter)
 {
     iHandle = ActionArgumentCreateStringOutput(aParameter.Handle());
 }
        /// <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 CpProxyUpnpOrgContentDirectory2(CpDevice aDevice)
            : base("schemas-upnp-org", "ContentDirectory", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionGetSearchCapabilities = new OpenHome.Net.Core.Action("GetSearchCapabilities");
            param = new ParameterString("SearchCaps", allowedValues);
            iActionGetSearchCapabilities.AddOutputParameter(param);

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

            iActionGetSortExtensionCapabilities = new OpenHome.Net.Core.Action("GetSortExtensionCapabilities");
            param = new ParameterString("SortExtensionCaps", allowedValues);
            iActionGetSortExtensionCapabilities.AddOutputParameter(param);

            iActionGetFeatureList = new OpenHome.Net.Core.Action("GetFeatureList");
            param = new ParameterString("FeatureList", allowedValues);
            iActionGetFeatureList.AddOutputParameter(param);

            iActionGetSystemUpdateID = new OpenHome.Net.Core.Action("GetSystemUpdateID");
            param = new ParameterUint("Id");
            iActionGetSystemUpdateID.AddOutputParameter(param);

            iActionBrowse = new OpenHome.Net.Core.Action("Browse");
            param = new ParameterString("ObjectID", allowedValues);
            iActionBrowse.AddInputParameter(param);
            allowedValues.Add("BrowseMetadata");
            allowedValues.Add("BrowseDirectChildren");
            param = new ParameterString("BrowseFlag", allowedValues);
            iActionBrowse.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Filter", allowedValues);
            iActionBrowse.AddInputParameter(param);
            param = new ParameterUint("StartingIndex");
            iActionBrowse.AddInputParameter(param);
            param = new ParameterUint("RequestedCount");
            iActionBrowse.AddInputParameter(param);
            param = new ParameterString("SortCriteria", allowedValues);
            iActionBrowse.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("NumberReturned");
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("TotalMatches");
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionBrowse.AddOutputParameter(param);

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

            iActionCreateObject = new OpenHome.Net.Core.Action("CreateObject");
            param = new ParameterString("ContainerID", allowedValues);
            iActionCreateObject.AddInputParameter(param);
            param = new ParameterString("Elements", allowedValues);
            iActionCreateObject.AddInputParameter(param);
            param = new ParameterString("ObjectID", allowedValues);
            iActionCreateObject.AddOutputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionCreateObject.AddOutputParameter(param);

            iActionDestroyObject = new OpenHome.Net.Core.Action("DestroyObject");
            param = new ParameterString("ObjectID", allowedValues);
            iActionDestroyObject.AddInputParameter(param);

            iActionUpdateObject = new OpenHome.Net.Core.Action("UpdateObject");
            param = new ParameterString("ObjectID", allowedValues);
            iActionUpdateObject.AddInputParameter(param);
            param = new ParameterString("CurrentTagValue", allowedValues);
            iActionUpdateObject.AddInputParameter(param);
            param = new ParameterString("NewTagValue", allowedValues);
            iActionUpdateObject.AddInputParameter(param);

            iActionMoveObject = new OpenHome.Net.Core.Action("MoveObject");
            param = new ParameterString("ObjectID", allowedValues);
            iActionMoveObject.AddInputParameter(param);
            param = new ParameterString("NewParentID", allowedValues);
            iActionMoveObject.AddInputParameter(param);
            param = new ParameterString("NewObjectID", allowedValues);
            iActionMoveObject.AddOutputParameter(param);

            iActionImportResource = new OpenHome.Net.Core.Action("ImportResource");
            param = new ParameterString("SourceURI", allowedValues);
            iActionImportResource.AddInputParameter(param);
            param = new ParameterString("DestinationURI", allowedValues);
            iActionImportResource.AddInputParameter(param);
            param = new ParameterUint("TransferID");
            iActionImportResource.AddOutputParameter(param);

            iActionExportResource = new OpenHome.Net.Core.Action("ExportResource");
            param = new ParameterString("SourceURI", allowedValues);
            iActionExportResource.AddInputParameter(param);
            param = new ParameterString("DestinationURI", allowedValues);
            iActionExportResource.AddInputParameter(param);
            param = new ParameterUint("TransferID");
            iActionExportResource.AddOutputParameter(param);

            iActionDeleteResource = new OpenHome.Net.Core.Action("DeleteResource");
            param = new ParameterString("ResourceURI", allowedValues);
            iActionDeleteResource.AddInputParameter(param);

            iActionStopTransferResource = new OpenHome.Net.Core.Action("StopTransferResource");
            param = new ParameterUint("TransferID");
            iActionStopTransferResource.AddInputParameter(param);

            iActionGetTransferProgress = new OpenHome.Net.Core.Action("GetTransferProgress");
            param = new ParameterUint("TransferID");
            iActionGetTransferProgress.AddInputParameter(param);
            allowedValues.Add("COMPLETED");
            allowedValues.Add("ERROR");
            allowedValues.Add("IN_PROGRESS");
            allowedValues.Add("STOPPED");
            param = new ParameterString("TransferStatus", allowedValues);
            iActionGetTransferProgress.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("TransferLength", allowedValues);
            iActionGetTransferProgress.AddOutputParameter(param);
            param = new ParameterString("TransferTotal", allowedValues);
            iActionGetTransferProgress.AddOutputParameter(param);

            iActionCreateReference = new OpenHome.Net.Core.Action("CreateReference");
            param = new ParameterString("ContainerID", allowedValues);
            iActionCreateReference.AddInputParameter(param);
            param = new ParameterString("ObjectID", allowedValues);
            iActionCreateReference.AddInputParameter(param);
            param = new ParameterString("NewID", allowedValues);
            iActionCreateReference.AddOutputParameter(param);

            iSystemUpdateID = new PropertyUint("SystemUpdateID", SystemUpdateIDPropertyChanged);
            AddProperty(iSystemUpdateID);
            iContainerUpdateIDs = new PropertyString("ContainerUpdateIDs", ContainerUpdateIDsPropertyChanged);
            AddProperty(iContainerUpdateIDs);
            iTransferIDs = new PropertyString("TransferIDs", TransferIDsPropertyChanged);
            AddProperty(iTransferIDs);

            iPropertyLock = new Mutex();
        }
예제 #8
0
파일: Service.cs 프로젝트: fuzzy01/ohNet
 /// <summary>
 /// Constructor suitable for use by clients of the device stack
 /// </summary>
 /// <param name="aParameter">Parameter defining the name and any set of allowed values for the property.</param>
 /// <param name="aOwnsNativeProperty">Whether the managed property owns the underlying native property.</param>
 public PropertyString(ParameterString aParameter, bool aOwnsNativeProperty = false)
     : base(aOwnsNativeProperty)
 {
     iHandle = ServicePropertyCreateStringDv(aParameter.Handle());
 }
예제 #9
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 CpProxyAvOpenhomeOrgReceiver1(CpDevice aDevice)
            : base("av-openhome-org", "Receiver", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionPlay = new OpenHome.Net.Core.Action("Play");

            iActionStop = new OpenHome.Net.Core.Action("Stop");

            iActionSetSender = new OpenHome.Net.Core.Action("SetSender");
            param = new ParameterString("Uri", allowedValues);
            iActionSetSender.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionSetSender.AddInputParameter(param);

            iActionSender = new OpenHome.Net.Core.Action("Sender");
            param = new ParameterString("Uri", allowedValues);
            iActionSender.AddOutputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionSender.AddOutputParameter(param);

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

            iActionTransportState = new OpenHome.Net.Core.Action("TransportState");
            allowedValues.Add("Stopped");
            allowedValues.Add("Playing");
            allowedValues.Add("Waiting");
            allowedValues.Add("Buffering");
            param = new ParameterString("Value", allowedValues);
            iActionTransportState.AddOutputParameter(param);
            allowedValues.Clear();

            iUri = new PropertyString("Uri", UriPropertyChanged);
            AddProperty(iUri);
            iMetadata = new PropertyString("Metadata", MetadataPropertyChanged);
            AddProperty(iMetadata);
            iTransportState = new PropertyString("TransportState", TransportStatePropertyChanged);
            AddProperty(iTransportState);
            iProtocolInfo = new PropertyString("ProtocolInfo", ProtocolInfoPropertyChanged);
            AddProperty(iProtocolInfo);

            iPropertyLock = new Mutex();
        }
예제 #10
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 CpProxyAvOpenhomeOrgSender1(ICpDevice aDevice)
            : base("av-openhome-org", "Sender", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

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

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

            iActionAudio = new OpenHome.Net.Core.Action("Audio");
            param = new ParameterBool("Value");
            iActionAudio.AddOutputParameter(param);

            iActionStatus = new OpenHome.Net.Core.Action("Status");
            allowedValues.Add("Enabled");
            allowedValues.Add("Disabled");
            allowedValues.Add("Blocked");
            param = new ParameterString("Value", allowedValues);
            iActionStatus.AddOutputParameter(param);
            allowedValues.Clear();

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

            iPresentationUrl = new PropertyString("PresentationUrl", PresentationUrlPropertyChanged);
            AddProperty(iPresentationUrl);
            iMetadata = new PropertyString("Metadata", MetadataPropertyChanged);
            AddProperty(iMetadata);
            iAudio = new PropertyBool("Audio", AudioPropertyChanged);
            AddProperty(iAudio);
            iStatus = new PropertyString("Status", StatusPropertyChanged);
            AddProperty(iStatus);
            iAttributes = new PropertyString("Attributes", AttributesPropertyChanged);
            AddProperty(iAttributes);

            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 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();
        }
예제 #12
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 CpProxyAvOpenhomeOrgInfo1(CpDevice aDevice)
            : base("av-openhome-org", "Info", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionCounters = new OpenHome.Net.Core.Action("Counters");
            param = new ParameterUint("TrackCount");
            iActionCounters.AddOutputParameter(param);
            param = new ParameterUint("DetailsCount");
            iActionCounters.AddOutputParameter(param);
            param = new ParameterUint("MetatextCount");
            iActionCounters.AddOutputParameter(param);

            iActionTrack = new OpenHome.Net.Core.Action("Track");
            param = new ParameterString("Uri", allowedValues);
            iActionTrack.AddOutputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionTrack.AddOutputParameter(param);

            iActionDetails = new OpenHome.Net.Core.Action("Details");
            param = new ParameterUint("Duration");
            iActionDetails.AddOutputParameter(param);
            param = new ParameterUint("BitRate");
            iActionDetails.AddOutputParameter(param);
            param = new ParameterUint("BitDepth");
            iActionDetails.AddOutputParameter(param);
            param = new ParameterUint("SampleRate");
            iActionDetails.AddOutputParameter(param);
            param = new ParameterBool("Lossless");
            iActionDetails.AddOutputParameter(param);
            param = new ParameterString("CodecName", allowedValues);
            iActionDetails.AddOutputParameter(param);

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

            iTrackCount = new PropertyUint("TrackCount", TrackCountPropertyChanged);
            AddProperty(iTrackCount);
            iDetailsCount = new PropertyUint("DetailsCount", DetailsCountPropertyChanged);
            AddProperty(iDetailsCount);
            iMetatextCount = new PropertyUint("MetatextCount", MetatextCountPropertyChanged);
            AddProperty(iMetatextCount);
            iUri = new PropertyString("Uri", UriPropertyChanged);
            AddProperty(iUri);
            iMetadata = new PropertyString("Metadata", MetadataPropertyChanged);
            AddProperty(iMetadata);
            iDuration = new PropertyUint("Duration", DurationPropertyChanged);
            AddProperty(iDuration);
            iBitRate = new PropertyUint("BitRate", BitRatePropertyChanged);
            AddProperty(iBitRate);
            iBitDepth = new PropertyUint("BitDepth", BitDepthPropertyChanged);
            AddProperty(iBitDepth);
            iSampleRate = new PropertyUint("SampleRate", SampleRatePropertyChanged);
            AddProperty(iSampleRate);
            iLossless = new PropertyBool("Lossless", LosslessPropertyChanged);
            AddProperty(iLossless);
            iCodecName = new PropertyString("CodecName", CodecNamePropertyChanged);
            AddProperty(iCodecName);
            iMetatext = new PropertyString("Metatext", MetatextPropertyChanged);
            AddProperty(iMetatext);

            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 CpProxyAvOpenhomeOrgPlaylistManager1(CpDevice aDevice)
            : base("av-openhome-org", "PlaylistManager", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

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

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

            iActionPlaylistReadArray = new OpenHome.Net.Core.Action("PlaylistReadArray");
            param = new ParameterUint("Id");
            iActionPlaylistReadArray.AddInputParameter(param);
            param = new ParameterBinary("Array");
            iActionPlaylistReadArray.AddOutputParameter(param);

            iActionPlaylistReadList = new OpenHome.Net.Core.Action("PlaylistReadList");
            param = new ParameterString("IdList", allowedValues);
            iActionPlaylistReadList.AddInputParameter(param);
            param = new ParameterString("PlaylistList", allowedValues);
            iActionPlaylistReadList.AddOutputParameter(param);

            iActionPlaylistRead = new OpenHome.Net.Core.Action("PlaylistRead");
            param = new ParameterUint("Id");
            iActionPlaylistRead.AddInputParameter(param);
            param = new ParameterString("Name", allowedValues);
            iActionPlaylistRead.AddOutputParameter(param);
            param = new ParameterString("Description", allowedValues);
            iActionPlaylistRead.AddOutputParameter(param);
            param = new ParameterUint("ImageId");
            iActionPlaylistRead.AddOutputParameter(param);

            iActionPlaylistSetName = new OpenHome.Net.Core.Action("PlaylistSetName");
            param = new ParameterUint("Id");
            iActionPlaylistSetName.AddInputParameter(param);
            param = new ParameterString("Name", allowedValues);
            iActionPlaylistSetName.AddInputParameter(param);

            iActionPlaylistSetDescription = new OpenHome.Net.Core.Action("PlaylistSetDescription");
            param = new ParameterUint("Id");
            iActionPlaylistSetDescription.AddInputParameter(param);
            param = new ParameterString("Description", allowedValues);
            iActionPlaylistSetDescription.AddInputParameter(param);

            iActionPlaylistSetImageId = new OpenHome.Net.Core.Action("PlaylistSetImageId");
            param = new ParameterUint("Id");
            iActionPlaylistSetImageId.AddInputParameter(param);
            param = new ParameterUint("ImageId");
            iActionPlaylistSetImageId.AddInputParameter(param);

            iActionPlaylistInsert = new OpenHome.Net.Core.Action("PlaylistInsert");
            param = new ParameterUint("AfterId");
            iActionPlaylistInsert.AddInputParameter(param);
            param = new ParameterString("Name", allowedValues);
            iActionPlaylistInsert.AddInputParameter(param);
            param = new ParameterString("Description", allowedValues);
            iActionPlaylistInsert.AddInputParameter(param);
            param = new ParameterUint("ImageId");
            iActionPlaylistInsert.AddInputParameter(param);
            param = new ParameterUint("NewId");
            iActionPlaylistInsert.AddOutputParameter(param);

            iActionPlaylistDeleteId = new OpenHome.Net.Core.Action("PlaylistDeleteId");
            param = new ParameterUint("Value");
            iActionPlaylistDeleteId.AddInputParameter(param);

            iActionPlaylistMove = new OpenHome.Net.Core.Action("PlaylistMove");
            param = new ParameterUint("Id");
            iActionPlaylistMove.AddInputParameter(param);
            param = new ParameterUint("AfterId");
            iActionPlaylistMove.AddInputParameter(param);

            iActionPlaylistsMax = new OpenHome.Net.Core.Action("PlaylistsMax");
            param = new ParameterUint("Value");
            iActionPlaylistsMax.AddOutputParameter(param);

            iActionTracksMax = new OpenHome.Net.Core.Action("TracksMax");
            param = new ParameterUint("Value");
            iActionTracksMax.AddOutputParameter(param);

            iActionPlaylistArrays = new OpenHome.Net.Core.Action("PlaylistArrays");
            param = new ParameterUint("Token");
            iActionPlaylistArrays.AddOutputParameter(param);
            param = new ParameterBinary("IdArray");
            iActionPlaylistArrays.AddOutputParameter(param);
            param = new ParameterBinary("TokenArray");
            iActionPlaylistArrays.AddOutputParameter(param);

            iActionPlaylistArraysChanged = new OpenHome.Net.Core.Action("PlaylistArraysChanged");
            param = new ParameterUint("Token");
            iActionPlaylistArraysChanged.AddInputParameter(param);
            param = new ParameterBool("Value");
            iActionPlaylistArraysChanged.AddOutputParameter(param);

            iActionRead = new OpenHome.Net.Core.Action("Read");
            param = new ParameterUint("Id");
            iActionRead.AddInputParameter(param);
            param = new ParameterUint("TrackId");
            iActionRead.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionRead.AddOutputParameter(param);

            iActionReadList = new OpenHome.Net.Core.Action("ReadList");
            param = new ParameterUint("Id");
            iActionReadList.AddInputParameter(param);
            param = new ParameterString("TrackIdList", allowedValues);
            iActionReadList.AddInputParameter(param);
            param = new ParameterString("TrackList", allowedValues);
            iActionReadList.AddOutputParameter(param);

            iActionInsert = new OpenHome.Net.Core.Action("Insert");
            param = new ParameterUint("Id");
            iActionInsert.AddInputParameter(param);
            param = new ParameterUint("AfterTrackId");
            iActionInsert.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionInsert.AddInputParameter(param);
            param = new ParameterUint("NewTrackId");
            iActionInsert.AddOutputParameter(param);

            iActionDeleteId = new OpenHome.Net.Core.Action("DeleteId");
            param = new ParameterUint("Id");
            iActionDeleteId.AddInputParameter(param);
            param = new ParameterUint("TrackId");
            iActionDeleteId.AddInputParameter(param);

            iActionDeleteAll = new OpenHome.Net.Core.Action("DeleteAll");
            param = new ParameterUint("Id");
            iActionDeleteAll.AddInputParameter(param);

            iMetadata = new PropertyString("Metadata", MetadataPropertyChanged);
            AddProperty(iMetadata);
            iImagesXml = new PropertyString("ImagesXml", ImagesXmlPropertyChanged);
            AddProperty(iImagesXml);
            iIdArray = new PropertyBinary("IdArray", IdArrayPropertyChanged);
            AddProperty(iIdArray);
            iTokenArray = new PropertyBinary("TokenArray", TokenArrayPropertyChanged);
            AddProperty(iTokenArray);
            iPlaylistsMax = new PropertyUint("PlaylistsMax", PlaylistsMaxPropertyChanged);
            AddProperty(iPlaylistsMax);
            iTracksMax = new PropertyUint("TracksMax", TracksMaxPropertyChanged);
            AddProperty(iTracksMax);

            iPropertyLock = new Mutex();
        }
예제 #14
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 CpProxyUpnpOrgAVTransport2(CpDevice aDevice)
            : base("schemas-upnp-org", "AVTransport", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSetAVTransportURI = new OpenHome.Net.Core.Action("SetAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);

            iActionSetNextAVTransportURI = new OpenHome.Net.Core.Action("SetNextAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);

            iActionGetMediaInfo = new OpenHome.Net.Core.Action("GetMediaInfo");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo.AddInputParameter(param);
            param = new ParameterUint("NrTracks", 0, 0);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);

            iActionGetMediaInfo_Ext = new OpenHome.Net.Core.Action("GetMediaInfo_Ext");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo_Ext.AddInputParameter(param);
            allowedValues.Add("NO_MEDIA");
            allowedValues.Add("TRACK_AWARE");
            allowedValues.Add("TRACK_UNAWARE");
            param = new ParameterString("CurrentType", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterUint("NrTracks", 0, 0);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);

            iActionGetTransportInfo = new OpenHome.Net.Core.Action("GetTransportInfo");
            param = new ParameterUint("InstanceID");
            iActionGetTransportInfo.AddInputParameter(param);
            allowedValues.Add("STOPPED");
            allowedValues.Add("PLAYING");
            param = new ParameterString("CurrentTransportState", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("OK");
            allowedValues.Add("ERROR_OCCURRED");
            param = new ParameterString("CurrentTransportStatus", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("1");
            param = new ParameterString("CurrentSpeed", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetPositionInfo = new OpenHome.Net.Core.Action("GetPositionInfo");
            param = new ParameterUint("InstanceID");
            iActionGetPositionInfo.AddInputParameter(param);
            param = new ParameterUint("Track", 0, 0, 1);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackDuration", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackMetaData", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackURI", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("RelTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("AbsTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("RelCount");
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("AbsCount");
            iActionGetPositionInfo.AddOutputParameter(param);

            iActionGetDeviceCapabilities = new OpenHome.Net.Core.Action("GetDeviceCapabilities");
            param = new ParameterUint("InstanceID");
            iActionGetDeviceCapabilities.AddInputParameter(param);
            param = new ParameterString("PlayMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecQualityModes", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);

            iActionGetTransportSettings = new OpenHome.Net.Core.Action("GetTransportSettings");
            param = new ParameterUint("InstanceID");
            iActionGetTransportSettings.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            param = new ParameterString("PlayMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("RecQualityMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);

            iActionStop = new OpenHome.Net.Core.Action("Stop");
            param = new ParameterUint("InstanceID");
            iActionStop.AddInputParameter(param);

            iActionPlay = new OpenHome.Net.Core.Action("Play");
            param = new ParameterUint("InstanceID");
            iActionPlay.AddInputParameter(param);
            allowedValues.Add("1");
            param = new ParameterString("Speed", allowedValues);
            iActionPlay.AddInputParameter(param);
            allowedValues.Clear();

            iActionPause = new OpenHome.Net.Core.Action("Pause");
            param = new ParameterUint("InstanceID");
            iActionPause.AddInputParameter(param);

            iActionRecord = new OpenHome.Net.Core.Action("Record");
            param = new ParameterUint("InstanceID");
            iActionRecord.AddInputParameter(param);

            iActionSeek = new OpenHome.Net.Core.Action("Seek");
            param = new ParameterUint("InstanceID");
            iActionSeek.AddInputParameter(param);
            allowedValues.Add("TRACK_NR");
            param = new ParameterString("Unit", allowedValues);
            iActionSeek.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Target", allowedValues);
            iActionSeek.AddInputParameter(param);

            iActionNext = new OpenHome.Net.Core.Action("Next");
            param = new ParameterUint("InstanceID");
            iActionNext.AddInputParameter(param);

            iActionPrevious = new OpenHome.Net.Core.Action("Previous");
            param = new ParameterUint("InstanceID");
            iActionPrevious.AddInputParameter(param);

            iActionSetPlayMode = new OpenHome.Net.Core.Action("SetPlayMode");
            param = new ParameterUint("InstanceID");
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            param = new ParameterString("NewPlayMode", allowedValues);
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Clear();

            iActionSetRecordQualityMode = new OpenHome.Net.Core.Action("SetRecordQualityMode");
            param = new ParameterUint("InstanceID");
            iActionSetRecordQualityMode.AddInputParameter(param);
            param = new ParameterString("NewRecordQualityMode", allowedValues);
            iActionSetRecordQualityMode.AddInputParameter(param);

            iActionGetCurrentTransportActions = new OpenHome.Net.Core.Action("GetCurrentTransportActions");
            param = new ParameterUint("InstanceID");
            iActionGetCurrentTransportActions.AddInputParameter(param);
            param = new ParameterString("Actions", allowedValues);
            iActionGetCurrentTransportActions.AddOutputParameter(param);

            iActionGetDRMState = new OpenHome.Net.Core.Action("GetDRMState");
            param = new ParameterUint("InstanceID");
            iActionGetDRMState.AddInputParameter(param);
            allowedValues.Add("OK");
            param = new ParameterString("CurrentDRMState", allowedValues);
            iActionGetDRMState.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetStateVariables = new OpenHome.Net.Core.Action("GetStateVariables");
            param = new ParameterUint("InstanceID");
            iActionGetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableList", allowedValues);
            iActionGetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableValuePairs", allowedValues);
            iActionGetStateVariables.AddOutputParameter(param);

            iActionSetStateVariables = new OpenHome.Net.Core.Action("SetStateVariables");
            param = new ParameterUint("InstanceID");
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("AVTransportUDN", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("ServiceType", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("ServiceId", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableValuePairs", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableList", allowedValues);
            iActionSetStateVariables.AddOutputParameter(param);

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

            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 CpProxyAvOpenhomeOrgMediaServer1(CpDevice aDevice)
            : base("av-openhome-org", "MediaServer", 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("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);

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

            iActionQueryPort = new OpenHome.Net.Core.Action("QueryPort");
            param = new ParameterUint("Value");
            iActionQueryPort.AddOutputParameter(param);

            iActionBrowsePort = new OpenHome.Net.Core.Action("BrowsePort");
            param = new ParameterUint("Value");
            iActionBrowsePort.AddOutputParameter(param);

            iActionUpdateCount = new OpenHome.Net.Core.Action("UpdateCount");
            param = new ParameterUint("Value");
            iActionUpdateCount.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);
            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);
            iAttributes = new PropertyString("Attributes", AttributesPropertyChanged);
            AddProperty(iAttributes);
            iQueryPort = new PropertyUint("QueryPort", QueryPortPropertyChanged);
            AddProperty(iQueryPort);
            iBrowsePort = new PropertyUint("BrowsePort", BrowsePortPropertyChanged);
            AddProperty(iBrowsePort);
            iUpdateCount = new PropertyUint("UpdateCount", UpdateCountPropertyChanged);
            AddProperty(iUpdateCount);

            iPropertyLock = new Mutex();
        }
예제 #16
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 CpProxyUpnpOrgAVTransport1(CpDevice aDevice)
            : base("schemas-upnp-org", "AVTransport", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSetAVTransportURI = new OpenHome.Net.Core.Action("SetAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);

            iActionSetNextAVTransportURI = new OpenHome.Net.Core.Action("SetNextAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);

            iActionGetMediaInfo = new OpenHome.Net.Core.Action("GetMediaInfo");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo.AddInputParameter(param);
            param = new ParameterUint("NrTracks", 0, 2147483647);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Add("WRITABLE");
            allowedValues.Add("PROTECTED");
            allowedValues.Add("NOT_WRITABLE");
            allowedValues.Add("UNKNOWN");
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetTransportInfo = new OpenHome.Net.Core.Action("GetTransportInfo");
            param = new ParameterUint("InstanceID");
            iActionGetTransportInfo.AddInputParameter(param);
            allowedValues.Add("STOPPED");
            allowedValues.Add("PLAYING");
            allowedValues.Add("TRANSITIONING");
            allowedValues.Add("PAUSED_PLAYBACK");
            allowedValues.Add("PAUSED_RECORDING");
            allowedValues.Add("RECORDING");
            allowedValues.Add("NO_MEDIA_PRESENT");
            param = new ParameterString("CurrentTransportState", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("OK");
            allowedValues.Add("ERROR_OCCURRED");
            param = new ParameterString("CurrentTransportStatus", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("CurrentSpeed", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);

            iActionGetPositionInfo = new OpenHome.Net.Core.Action("GetPositionInfo");
            param = new ParameterUint("InstanceID");
            iActionGetPositionInfo.AddInputParameter(param);
            param = new ParameterUint("Track", 0, 2147483647, 1);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackDuration", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackMetaData", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackURI", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("RelTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("AbsTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("RelCount");
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("AbsCount");
            iActionGetPositionInfo.AddOutputParameter(param);

            iActionGetDeviceCapabilities = new OpenHome.Net.Core.Action("GetDeviceCapabilities");
            param = new ParameterUint("InstanceID");
            iActionGetDeviceCapabilities.AddInputParameter(param);
            param = new ParameterString("PlayMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecQualityModes", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);

            iActionGetTransportSettings = new OpenHome.Net.Core.Action("GetTransportSettings");
            param = new ParameterUint("InstanceID");
            iActionGetTransportSettings.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            param = new ParameterString("PlayMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("RecQualityMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);

            iActionStop = new OpenHome.Net.Core.Action("Stop");
            param = new ParameterUint("InstanceID");
            iActionStop.AddInputParameter(param);

            iActionPlay = new OpenHome.Net.Core.Action("Play");
            param = new ParameterUint("InstanceID");
            iActionPlay.AddInputParameter(param);
            param = new ParameterString("Speed", allowedValues);
            iActionPlay.AddInputParameter(param);

            iActionPause = new OpenHome.Net.Core.Action("Pause");
            param = new ParameterUint("InstanceID");
            iActionPause.AddInputParameter(param);

            iActionRecord = new OpenHome.Net.Core.Action("Record");
            param = new ParameterUint("InstanceID");
            iActionRecord.AddInputParameter(param);

            iActionSeek = new OpenHome.Net.Core.Action("Seek");
            param = new ParameterUint("InstanceID");
            iActionSeek.AddInputParameter(param);
            allowedValues.Add("TRACK_NR");
            allowedValues.Add("ABS_TIME");
            allowedValues.Add("REL_TIME");
            allowedValues.Add("ABS_COUNT");
            allowedValues.Add("REL_COUNT");
            allowedValues.Add("CHANNEL_FREQ");
            allowedValues.Add("TAPE-INDEX");
            allowedValues.Add("FRAME");
            param = new ParameterString("Unit", allowedValues);
            iActionSeek.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Target", allowedValues);
            iActionSeek.AddInputParameter(param);

            iActionNext = new OpenHome.Net.Core.Action("Next");
            param = new ParameterUint("InstanceID");
            iActionNext.AddInputParameter(param);

            iActionPrevious = new OpenHome.Net.Core.Action("Previous");
            param = new ParameterUint("InstanceID");
            iActionPrevious.AddInputParameter(param);

            iActionSetPlayMode = new OpenHome.Net.Core.Action("SetPlayMode");
            param = new ParameterUint("InstanceID");
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            param = new ParameterString("NewPlayMode", allowedValues);
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Clear();

            iActionSetRecordQualityMode = new OpenHome.Net.Core.Action("SetRecordQualityMode");
            param = new ParameterUint("InstanceID");
            iActionSetRecordQualityMode.AddInputParameter(param);
            param = new ParameterString("NewRecordQualityMode", allowedValues);
            iActionSetRecordQualityMode.AddInputParameter(param);

            iActionGetCurrentTransportActions = new OpenHome.Net.Core.Action("GetCurrentTransportActions");
            param = new ParameterUint("InstanceID");
            iActionGetCurrentTransportActions.AddInputParameter(param);
            param = new ParameterString("Actions", allowedValues);
            iActionGetCurrentTransportActions.AddOutputParameter(param);

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

            iPropertyLock = new Mutex();
        }
예제 #17
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 CpProxyAvOpenhomeOrgExakt1(CpDevice aDevice)
            : base("av-openhome-org", "Exakt", 1, 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);

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

            iPropertyLock = new Mutex();
        }
예제 #18
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 CpProxyAvOpenhomeOrgRadio1(CpDevice aDevice)
            : base("av-openhome-org", "Radio", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionPlay = new OpenHome.Net.Core.Action("Play");

            iActionPause = new OpenHome.Net.Core.Action("Pause");

            iActionStop = new OpenHome.Net.Core.Action("Stop");

            iActionSeekSecondAbsolute = new OpenHome.Net.Core.Action("SeekSecondAbsolute");
            param = new ParameterUint("Value");
            iActionSeekSecondAbsolute.AddInputParameter(param);

            iActionSeekSecondRelative = new OpenHome.Net.Core.Action("SeekSecondRelative");
            param = new ParameterInt("Value");
            iActionSeekSecondRelative.AddInputParameter(param);

            iActionChannel = new OpenHome.Net.Core.Action("Channel");
            param = new ParameterString("Uri", allowedValues);
            iActionChannel.AddOutputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionChannel.AddOutputParameter(param);

            iActionSetChannel = new OpenHome.Net.Core.Action("SetChannel");
            param = new ParameterString("Uri", allowedValues);
            iActionSetChannel.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionSetChannel.AddInputParameter(param);

            iActionTransportState = new OpenHome.Net.Core.Action("TransportState");
            allowedValues.Add("Stopped");
            allowedValues.Add("Playing");
            allowedValues.Add("Paused");
            allowedValues.Add("Buffering");
            param = new ParameterString("Value", allowedValues);
            iActionTransportState.AddOutputParameter(param);
            allowedValues.Clear();

            iActionId = new OpenHome.Net.Core.Action("Id");
            param = new ParameterUint("Value");
            iActionId.AddOutputParameter(param);

            iActionSetId = new OpenHome.Net.Core.Action("SetId");
            param = new ParameterUint("Value");
            iActionSetId.AddInputParameter(param);
            param = new ParameterString("Uri", allowedValues);
            iActionSetId.AddInputParameter(param);

            iActionRead = new OpenHome.Net.Core.Action("Read");
            param = new ParameterUint("Id");
            iActionRead.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionRead.AddOutputParameter(param);

            iActionReadList = new OpenHome.Net.Core.Action("ReadList");
            param = new ParameterString("IdList", allowedValues);
            iActionReadList.AddInputParameter(param);
            param = new ParameterString("ChannelList", allowedValues);
            iActionReadList.AddOutputParameter(param);

            iActionIdArray = new OpenHome.Net.Core.Action("IdArray");
            param = new ParameterUint("Token");
            iActionIdArray.AddOutputParameter(param);
            param = new ParameterBinary("Array");
            iActionIdArray.AddOutputParameter(param);

            iActionIdArrayChanged = new OpenHome.Net.Core.Action("IdArrayChanged");
            param = new ParameterUint("Token");
            iActionIdArrayChanged.AddInputParameter(param);
            param = new ParameterBool("Value");
            iActionIdArrayChanged.AddOutputParameter(param);

            iActionChannelsMax = new OpenHome.Net.Core.Action("ChannelsMax");
            param = new ParameterUint("Value");
            iActionChannelsMax.AddOutputParameter(param);

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

            iUri = new PropertyString("Uri", UriPropertyChanged);
            AddProperty(iUri);
            iMetadata = new PropertyString("Metadata", MetadataPropertyChanged);
            AddProperty(iMetadata);
            iTransportState = new PropertyString("TransportState", TransportStatePropertyChanged);
            AddProperty(iTransportState);
            iId = new PropertyUint("Id", IdPropertyChanged);
            AddProperty(iId);
            iIdArray = new PropertyBinary("IdArray", IdArrayPropertyChanged);
            AddProperty(iIdArray);
            iChannelsMax = new PropertyUint("ChannelsMax", ChannelsMaxPropertyChanged);
            AddProperty(iChannelsMax);
            iProtocolInfo = new PropertyString("ProtocolInfo", ProtocolInfoPropertyChanged);
            AddProperty(iProtocolInfo);

            iPropertyLock = new Mutex();
        }
예제 #19
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 CpProxyUpnpOrgDimming1(CpDevice aDevice)
            : base("schemas-upnp-org", "Dimming", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSetLoadLevelTarget = new OpenHome.Net.Core.Action("SetLoadLevelTarget");
            param = new ParameterUint("newLoadlevelTarget", 0, 100);
            iActionSetLoadLevelTarget.AddInputParameter(param);

            iActionGetLoadLevelTarget = new OpenHome.Net.Core.Action("GetLoadLevelTarget");
            param = new ParameterUint("GetLoadlevelTarget", 0, 100);
            iActionGetLoadLevelTarget.AddOutputParameter(param);

            iActionGetLoadLevelStatus = new OpenHome.Net.Core.Action("GetLoadLevelStatus");
            param = new ParameterUint("retLoadlevelStatus", 0, 100);
            iActionGetLoadLevelStatus.AddOutputParameter(param);

            iActionSetOnEffectLevel = new OpenHome.Net.Core.Action("SetOnEffectLevel");
            param = new ParameterUint("newOnEffectLevel", 0, 100);
            iActionSetOnEffectLevel.AddInputParameter(param);

            iActionSetOnEffect = new OpenHome.Net.Core.Action("SetOnEffect");
            allowedValues.Add("OnEffectLevel");
            allowedValues.Add("LastSetting");
            allowedValues.Add("Default");
            param = new ParameterString("newOnEffect", allowedValues);
            iActionSetOnEffect.AddInputParameter(param);
            allowedValues.Clear();

            iActionGetOnEffectParameters = new OpenHome.Net.Core.Action("GetOnEffectParameters");
            allowedValues.Add("OnEffectLevel");
            allowedValues.Add("LastSetting");
            allowedValues.Add("Default");
            param = new ParameterString("retOnEffect", allowedValues);
            iActionGetOnEffectParameters.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterUint("retOnEffectLevel", 0, 100);
            iActionGetOnEffectParameters.AddOutputParameter(param);

            iActionStepUp = new OpenHome.Net.Core.Action("StepUp");

            iActionStepDown = new OpenHome.Net.Core.Action("StepDown");

            iActionStartRampUp = new OpenHome.Net.Core.Action("StartRampUp");

            iActionStartRampDown = new OpenHome.Net.Core.Action("StartRampDown");

            iActionStopRamp = new OpenHome.Net.Core.Action("StopRamp");

            iActionStartRampToLevel = new OpenHome.Net.Core.Action("StartRampToLevel");
            param = new ParameterUint("newLoadLevelTarget", 0, 100);
            iActionStartRampToLevel.AddInputParameter(param);
            param = new ParameterUint("newRampTime");
            iActionStartRampToLevel.AddInputParameter(param);

            iActionSetStepDelta = new OpenHome.Net.Core.Action("SetStepDelta");
            param = new ParameterUint("newStepDelta", 1, 100);
            iActionSetStepDelta.AddInputParameter(param);

            iActionGetStepDelta = new OpenHome.Net.Core.Action("GetStepDelta");
            param = new ParameterUint("retStepDelta", 1, 100);
            iActionGetStepDelta.AddOutputParameter(param);

            iActionSetRampRate = new OpenHome.Net.Core.Action("SetRampRate");
            param = new ParameterUint("newRampRate", 0, 100);
            iActionSetRampRate.AddInputParameter(param);

            iActionGetRampRate = new OpenHome.Net.Core.Action("GetRampRate");
            param = new ParameterUint("retRampRate", 0, 100);
            iActionGetRampRate.AddOutputParameter(param);

            iActionPauseRamp = new OpenHome.Net.Core.Action("PauseRamp");

            iActionResumeRamp = new OpenHome.Net.Core.Action("ResumeRamp");

            iActionGetIsRamping = new OpenHome.Net.Core.Action("GetIsRamping");
            param = new ParameterBool("retIsRamping");
            iActionGetIsRamping.AddOutputParameter(param);

            iActionGetRampPaused = new OpenHome.Net.Core.Action("GetRampPaused");
            param = new ParameterBool("retRampPaused");
            iActionGetRampPaused.AddOutputParameter(param);

            iActionGetRampTime = new OpenHome.Net.Core.Action("GetRampTime");
            param = new ParameterUint("retRampTime");
            iActionGetRampTime.AddOutputParameter(param);

            iLoadLevelStatus = new PropertyUint("LoadLevelStatus", LoadLevelStatusPropertyChanged);
            AddProperty(iLoadLevelStatus);
            iStepDelta = new PropertyUint("StepDelta", StepDeltaPropertyChanged);
            AddProperty(iStepDelta);
            iRampRate = new PropertyUint("RampRate", RampRatePropertyChanged);
            AddProperty(iRampRate);
            iIsRamping = new PropertyBool("IsRamping", IsRampingPropertyChanged);
            AddProperty(iIsRamping);
            iRampPaused = new PropertyBool("RampPaused", RampPausedPropertyChanged);
            AddProperty(iRampPaused);

            iPropertyLock = new Mutex();
        }
예제 #20
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 CpProxyUpnpOrgConnectionManager1(ICpDevice aDevice)
            : base("schemas-upnp-org", "ConnectionManager", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionGetProtocolInfo = new OpenHome.Net.Core.Action("GetProtocolInfo");
            param = new ParameterString("Source", allowedValues);
            iActionGetProtocolInfo.AddOutputParameter(param);
            param = new ParameterString("Sink", allowedValues);
            iActionGetProtocolInfo.AddOutputParameter(param);

            iActionPrepareForConnection = new OpenHome.Net.Core.Action("PrepareForConnection");
            param = new ParameterString("RemoteProtocolInfo", allowedValues);
            iActionPrepareForConnection.AddInputParameter(param);
            param = new ParameterString("PeerConnectionManager", allowedValues);
            iActionPrepareForConnection.AddInputParameter(param);
            param = new ParameterInt("PeerConnectionID");
            iActionPrepareForConnection.AddInputParameter(param);
            allowedValues.Add("Input");
            allowedValues.Add("Output");
            param = new ParameterString("Direction", allowedValues);
            iActionPrepareForConnection.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterInt("ConnectionID");
            iActionPrepareForConnection.AddOutputParameter(param);
            param = new ParameterInt("AVTransportID");
            iActionPrepareForConnection.AddOutputParameter(param);
            param = new ParameterInt("RcsID");
            iActionPrepareForConnection.AddOutputParameter(param);

            iActionConnectionComplete = new OpenHome.Net.Core.Action("ConnectionComplete");
            param = new ParameterInt("ConnectionID");
            iActionConnectionComplete.AddInputParameter(param);

            iActionGetCurrentConnectionIDs = new OpenHome.Net.Core.Action("GetCurrentConnectionIDs");
            param = new ParameterString("ConnectionIDs", allowedValues);
            iActionGetCurrentConnectionIDs.AddOutputParameter(param);

            iActionGetCurrentConnectionInfo = new OpenHome.Net.Core.Action("GetCurrentConnectionInfo");
            param = new ParameterInt("ConnectionID");
            iActionGetCurrentConnectionInfo.AddInputParameter(param);
            param = new ParameterInt("RcsID");
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            param = new ParameterInt("AVTransportID");
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            param = new ParameterString("ProtocolInfo", allowedValues);
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            param = new ParameterString("PeerConnectionManager", allowedValues);
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            param = new ParameterInt("PeerConnectionID");
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            allowedValues.Add("Input");
            allowedValues.Add("Output");
            param = new ParameterString("Direction", allowedValues);
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("OK");
            allowedValues.Add("ContentFormatMismatch");
            allowedValues.Add("InsufficientBandwidth");
            allowedValues.Add("UnreliableChannel");
            allowedValues.Add("Unknown");
            param = new ParameterString("Status", allowedValues);
            iActionGetCurrentConnectionInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iSourceProtocolInfo = new PropertyString("SourceProtocolInfo", SourceProtocolInfoPropertyChanged);
            AddProperty(iSourceProtocolInfo);
            iSinkProtocolInfo = new PropertyString("SinkProtocolInfo", SinkProtocolInfoPropertyChanged);
            AddProperty(iSinkProtocolInfo);
            iCurrentConnectionIDs = new PropertyString("CurrentConnectionIDs", CurrentConnectionIDsPropertyChanged);
            AddProperty(iCurrentConnectionIDs);

            iPropertyLock = new Mutex();
        }
예제 #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 CpProxyOpenhomeOrgTestBasic1(CpDevice aDevice)
            : base("openhome-org", "TestBasic", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionIncrement = new OpenHome.Net.Core.Action("Increment");
            param = new ParameterUint("Value");
            iActionIncrement.AddInputParameter(param);
            param = new ParameterUint("Result");
            iActionIncrement.AddOutputParameter(param);

            iActionEchoAllowedRangeUint = new OpenHome.Net.Core.Action("EchoAllowedRangeUint");
            param = new ParameterUint("Value", 10, 20);
            iActionEchoAllowedRangeUint.AddInputParameter(param);
            param = new ParameterUint("Result");
            iActionEchoAllowedRangeUint.AddOutputParameter(param);

            iActionDecrement = new OpenHome.Net.Core.Action("Decrement");
            param = new ParameterInt("Value");
            iActionDecrement.AddInputParameter(param);
            param = new ParameterInt("Result");
            iActionDecrement.AddOutputParameter(param);

            iActionToggle = new OpenHome.Net.Core.Action("Toggle");
            param = new ParameterBool("Value");
            iActionToggle.AddInputParameter(param);
            param = new ParameterBool("Result");
            iActionToggle.AddOutputParameter(param);

            iActionEchoString = new OpenHome.Net.Core.Action("EchoString");
            param = new ParameterString("Value", allowedValues);
            iActionEchoString.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionEchoString.AddOutputParameter(param);

            iActionEchoAllowedValueString = new OpenHome.Net.Core.Action("EchoAllowedValueString");
            allowedValues.Add("One");
            allowedValues.Add("Two");
            allowedValues.Add("Three");
            allowedValues.Add("Four");
            param = new ParameterString("Value", allowedValues);
            iActionEchoAllowedValueString.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Result", allowedValues);
            iActionEchoAllowedValueString.AddOutputParameter(param);

            iActionEchoBinary = new OpenHome.Net.Core.Action("EchoBinary");
            param = new ParameterBinary("Value");
            iActionEchoBinary.AddInputParameter(param);
            param = new ParameterBinary("Result");
            iActionEchoBinary.AddOutputParameter(param);

            iActionSetUint = new OpenHome.Net.Core.Action("SetUint");
            param = new ParameterUint("ValueUint");
            iActionSetUint.AddInputParameter(param);

            iActionGetUint = new OpenHome.Net.Core.Action("GetUint");
            param = new ParameterUint("ValueUint");
            iActionGetUint.AddOutputParameter(param);

            iActionSetInt = new OpenHome.Net.Core.Action("SetInt");
            param = new ParameterInt("ValueInt");
            iActionSetInt.AddInputParameter(param);

            iActionGetInt = new OpenHome.Net.Core.Action("GetInt");
            param = new ParameterInt("ValueInt");
            iActionGetInt.AddOutputParameter(param);

            iActionSetBool = new OpenHome.Net.Core.Action("SetBool");
            param = new ParameterBool("ValueBool");
            iActionSetBool.AddInputParameter(param);

            iActionGetBool = new OpenHome.Net.Core.Action("GetBool");
            param = new ParameterBool("ValueBool");
            iActionGetBool.AddOutputParameter(param);

            iActionSetMultiple = new OpenHome.Net.Core.Action("SetMultiple");
            param = new ParameterUint("ValueUint");
            iActionSetMultiple.AddInputParameter(param);
            param = new ParameterInt("ValueInt");
            iActionSetMultiple.AddInputParameter(param);
            param = new ParameterBool("ValueBool");
            iActionSetMultiple.AddInputParameter(param);

            iActionGetMultiple = new OpenHome.Net.Core.Action("GetMultiple");
            param = new ParameterUint("ValueUint");
            iActionGetMultiple.AddOutputParameter(param);
            param = new ParameterInt("ValueInt");
            iActionGetMultiple.AddOutputParameter(param);
            param = new ParameterBool("ValueBool");
            iActionGetMultiple.AddOutputParameter(param);

            iActionSetString = new OpenHome.Net.Core.Action("SetString");
            param = new ParameterString("ValueStr", allowedValues);
            iActionSetString.AddInputParameter(param);

            iActionGetString = new OpenHome.Net.Core.Action("GetString");
            param = new ParameterString("ValueStr", allowedValues);
            iActionGetString.AddOutputParameter(param);

            iActionSetBinary = new OpenHome.Net.Core.Action("SetBinary");
            param = new ParameterBinary("ValueBin");
            iActionSetBinary.AddInputParameter(param);

            iActionGetBinary = new OpenHome.Net.Core.Action("GetBinary");
            param = new ParameterBinary("ValueBin");
            iActionGetBinary.AddOutputParameter(param);

            iActionToggleBool = new OpenHome.Net.Core.Action("ToggleBool");

            iActionWriteFile = new OpenHome.Net.Core.Action("WriteFile");
            param = new ParameterString("Data", allowedValues);
            iActionWriteFile.AddInputParameter(param);
            param = new ParameterString("FileFullName", allowedValues);
            iActionWriteFile.AddInputParameter(param);

            iActionShutdown = new OpenHome.Net.Core.Action("Shutdown");

            iVarUint = new PropertyUint("VarUint", VarUintPropertyChanged);
            AddProperty(iVarUint);
            iVarInt = new PropertyInt("VarInt", VarIntPropertyChanged);
            AddProperty(iVarInt);
            iVarBool = new PropertyBool("VarBool", VarBoolPropertyChanged);
            AddProperty(iVarBool);
            iVarStr = new PropertyString("VarStr", VarStrPropertyChanged);
            AddProperty(iVarStr);
            iVarBin = new PropertyBinary("VarBin", VarBinPropertyChanged);
            AddProperty(iVarBin);
            
            iPropertyLock = new Mutex();
        }
예제 #22
0
파일: CpService.cs 프로젝트: broonie/ohNet
 /// <summary>
 /// Constructor for string input argument for an action
 /// </summary>
 /// <remarks>Intended to be write only (its value is written on construction and not be later read)</remarks>
 /// <param name="aParameter">Defines the name plus any bounds to the value for the argument.
 /// Must have been previously added to the action using Action.AddInputParameter</param>
 /// <param name="aValue">Value for the argument</param>
 public unsafe ArgumentString(ParameterString aParameter, String aValue)
 {
     IntPtr value = InteropUtils.StringToHGlobalUtf8(aValue);
     iHandle = ActionArgumentCreateStringInput(aParameter.Handle(), value);
     Marshal.FreeHGlobal(value);
 }
        /// <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 CpProxyUpnpOrgAVTransport1(CpDevice aDevice)
            : base("schemas-upnp-org", "AVTransport", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSetAVTransportURI = new OpenHome.Net.Core.Action("SetAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);

            iActionBendAVTransportURI = new OpenHome.Net.Core.Action("BendAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionBendAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionBendAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionBendAVTransportURI.AddInputParameter(param);

            iActionLoveCurrentTrack = new OpenHome.Net.Core.Action("LoveCurrentTrack");
            param = new ParameterUint("InstanceID");
            iActionLoveCurrentTrack.AddInputParameter(param);

            iActionBanCurrentTrack = new OpenHome.Net.Core.Action("BanCurrentTrack");
            param = new ParameterUint("InstanceID");
            iActionBanCurrentTrack.AddInputParameter(param);

            iActionSetResourceForCurrentStream = new OpenHome.Net.Core.Action("SetResourceForCurrentStream");
            param = new ParameterString("ResourceURI", allowedValues);
            iActionSetResourceForCurrentStream.AddInputParameter(param);

            iActionGetStreamProperties = new OpenHome.Net.Core.Action("GetStreamProperties");
            param = new ParameterString("CurrentContentType", allowedValues);
            iActionGetStreamProperties.AddOutputParameter(param);
            param = new ParameterUint("CurrentBitrate");
            iActionGetStreamProperties.AddOutputParameter(param);

            iActionPause = new OpenHome.Net.Core.Action("Pause");
            param = new ParameterUint("InstanceID");
            iActionPause.AddInputParameter(param);

            iActionGetMediaInfo = new OpenHome.Net.Core.Action("GetMediaInfo");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo.AddInputParameter(param);
            param = new ParameterUint("NrTracks");
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Add("NETWORK");
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetTransportInfo = new OpenHome.Net.Core.Action("GetTransportInfo");
            param = new ParameterUint("InstanceID");
            iActionGetTransportInfo.AddInputParameter(param);
            allowedValues.Add("STOPPED");
            allowedValues.Add("PLAYING");
            allowedValues.Add("TRANSITIONING");
            allowedValues.Add("NO_MEDIA_PRESENT");
            param = new ParameterString("CurrentTransportState", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("OK");
            allowedValues.Add("ERROR_OCCURRED");
            param = new ParameterString("CurrentTransportStatus", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("1");
            param = new ParameterString("CurrentSpeed", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetPositionInfo = new OpenHome.Net.Core.Action("GetPositionInfo");
            param = new ParameterUint("InstanceID");
            iActionGetPositionInfo.AddInputParameter(param);
            param = new ParameterUint("Track");
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackDuration", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackMetaData", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackURI", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("RelTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("AbsTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("RelCount");
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("AbsCount");
            iActionGetPositionInfo.AddOutputParameter(param);

            iActionGetDeviceCapabilities = new OpenHome.Net.Core.Action("GetDeviceCapabilities");
            param = new ParameterUint("InstanceID");
            iActionGetDeviceCapabilities.AddInputParameter(param);
            param = new ParameterString("PlayMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecQualityModes", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);

            iActionGetTransportSettings = new OpenHome.Net.Core.Action("GetTransportSettings");
            param = new ParameterUint("InstanceID");
            iActionGetTransportSettings.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            param = new ParameterString("PlayMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);
            allowedValues.Clear();
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("RecQualityMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);
            allowedValues.Clear();

            iActionStop = new OpenHome.Net.Core.Action("Stop");
            param = new ParameterUint("InstanceID");
            iActionStop.AddInputParameter(param);

            iActionPlay = new OpenHome.Net.Core.Action("Play");
            param = new ParameterUint("InstanceID");
            iActionPlay.AddInputParameter(param);
            allowedValues.Add("1");
            param = new ParameterString("Speed", allowedValues);
            iActionPlay.AddInputParameter(param);
            allowedValues.Clear();

            iActionSeek = new OpenHome.Net.Core.Action("Seek");
            param = new ParameterUint("InstanceID");
            iActionSeek.AddInputParameter(param);
            allowedValues.Add("TRACK_NR");
            allowedValues.Add("ABS_TIME");
            param = new ParameterString("Unit", allowedValues);
            iActionSeek.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Target", allowedValues);
            iActionSeek.AddInputParameter(param);

            iActionNext = new OpenHome.Net.Core.Action("Next");
            param = new ParameterUint("InstanceID");
            iActionNext.AddInputParameter(param);

            iActionPrevious = new OpenHome.Net.Core.Action("Previous");
            param = new ParameterUint("InstanceID");
            iActionPrevious.AddInputParameter(param);

            iActionSetPlayMode = new OpenHome.Net.Core.Action("SetPlayMode");
            param = new ParameterUint("InstanceID");
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            allowedValues.Add("SHUFFLE");
            allowedValues.Add("RANDOM");
            allowedValues.Add("REPEAT_ONE");
            allowedValues.Add("REPEAT_ALL");
            param = new ParameterString("NewPlayMode", allowedValues);
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Clear();

            iActionGetCurrentTransportActions = new OpenHome.Net.Core.Action("GetCurrentTransportActions");
            param = new ParameterUint("InstanceID");
            iActionGetCurrentTransportActions.AddInputParameter(param);
            param = new ParameterString("Actions", allowedValues);
            iActionGetCurrentTransportActions.AddOutputParameter(param);

            iActionSetNextStartTriggerTime = new OpenHome.Net.Core.Action("SetNextStartTriggerTime");
            param = new ParameterUint("InstanceID");
            iActionSetNextStartTriggerTime.AddInputParameter(param);
            param = new ParameterString("TimeService", allowedValues);
            iActionSetNextStartTriggerTime.AddInputParameter(param);
            param = new ParameterString("StartTime", allowedValues);
            iActionSetNextStartTriggerTime.AddInputParameter(param);

            iBufferFilled = new PropertyUint("BufferFilled", BufferFilledPropertyChanged);
            AddProperty(iBufferFilled);
            iLastChange = new PropertyString("LastChange", LastChangePropertyChanged);
            AddProperty(iLastChange);

            iPropertyLock = new Mutex();
        }
예제 #24
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 CpProxyAvOpenhomeOrgPlaylist1(CpDevice aDevice)
            : base("av-openhome-org", "Playlist", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionPlay = new OpenHome.Net.Core.Action("Play");

            iActionPause = new OpenHome.Net.Core.Action("Pause");

            iActionStop = new OpenHome.Net.Core.Action("Stop");

            iActionNext = new OpenHome.Net.Core.Action("Next");

            iActionPrevious = new OpenHome.Net.Core.Action("Previous");

            iActionSetRepeat = new OpenHome.Net.Core.Action("SetRepeat");
            param = new ParameterBool("Value");
            iActionSetRepeat.AddInputParameter(param);

            iActionRepeat = new OpenHome.Net.Core.Action("Repeat");
            param = new ParameterBool("Value");
            iActionRepeat.AddOutputParameter(param);

            iActionSetShuffle = new OpenHome.Net.Core.Action("SetShuffle");
            param = new ParameterBool("Value");
            iActionSetShuffle.AddInputParameter(param);

            iActionShuffle = new OpenHome.Net.Core.Action("Shuffle");
            param = new ParameterBool("Value");
            iActionShuffle.AddOutputParameter(param);

            iActionSeekSecondAbsolute = new OpenHome.Net.Core.Action("SeekSecondAbsolute");
            param = new ParameterUint("Value");
            iActionSeekSecondAbsolute.AddInputParameter(param);

            iActionSeekSecondRelative = new OpenHome.Net.Core.Action("SeekSecondRelative");
            param = new ParameterInt("Value");
            iActionSeekSecondRelative.AddInputParameter(param);

            iActionSeekId = new OpenHome.Net.Core.Action("SeekId");
            param = new ParameterUint("Value");
            iActionSeekId.AddInputParameter(param);

            iActionSeekIndex = new OpenHome.Net.Core.Action("SeekIndex");
            param = new ParameterUint("Value");
            iActionSeekIndex.AddInputParameter(param);

            iActionTransportState = new OpenHome.Net.Core.Action("TransportState");
            allowedValues.Add("Playing");
            allowedValues.Add("Paused");
            allowedValues.Add("Stopped");
            allowedValues.Add("Buffering");
            param = new ParameterString("Value", allowedValues);
            iActionTransportState.AddOutputParameter(param);
            allowedValues.Clear();

            iActionId = new OpenHome.Net.Core.Action("Id");
            param = new ParameterUint("Value");
            iActionId.AddOutputParameter(param);

            iActionRead = new OpenHome.Net.Core.Action("Read");
            param = new ParameterUint("Id");
            iActionRead.AddInputParameter(param);
            param = new ParameterString("Uri", allowedValues);
            iActionRead.AddOutputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionRead.AddOutputParameter(param);

            iActionReadList = new OpenHome.Net.Core.Action("ReadList");
            param = new ParameterString("IdList", allowedValues);
            iActionReadList.AddInputParameter(param);
            param = new ParameterString("TrackList", allowedValues);
            iActionReadList.AddOutputParameter(param);

            iActionInsert = new OpenHome.Net.Core.Action("Insert");
            param = new ParameterUint("AfterId");
            iActionInsert.AddInputParameter(param);
            param = new ParameterString("Uri", allowedValues);
            iActionInsert.AddInputParameter(param);
            param = new ParameterString("Metadata", allowedValues);
            iActionInsert.AddInputParameter(param);
            param = new ParameterUint("NewId");
            iActionInsert.AddOutputParameter(param);

            iActionDeleteId = new OpenHome.Net.Core.Action("DeleteId");
            param = new ParameterUint("Value");
            iActionDeleteId.AddInputParameter(param);

            iActionDeleteAll = new OpenHome.Net.Core.Action("DeleteAll");

            iActionTracksMax = new OpenHome.Net.Core.Action("TracksMax");
            param = new ParameterUint("Value");
            iActionTracksMax.AddOutputParameter(param);

            iActionIdArray = new OpenHome.Net.Core.Action("IdArray");
            param = new ParameterUint("Token");
            iActionIdArray.AddOutputParameter(param);
            param = new ParameterBinary("Array");
            iActionIdArray.AddOutputParameter(param);

            iActionIdArrayChanged = new OpenHome.Net.Core.Action("IdArrayChanged");
            param = new ParameterUint("Token");
            iActionIdArrayChanged.AddInputParameter(param);
            param = new ParameterBool("Value");
            iActionIdArrayChanged.AddOutputParameter(param);

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

            iTransportState = new PropertyString("TransportState", TransportStatePropertyChanged);
            AddProperty(iTransportState);
            iRepeat = new PropertyBool("Repeat", RepeatPropertyChanged);
            AddProperty(iRepeat);
            iShuffle = new PropertyBool("Shuffle", ShufflePropertyChanged);
            AddProperty(iShuffle);
            iId = new PropertyUint("Id", IdPropertyChanged);
            AddProperty(iId);
            iIdArray = new PropertyBinary("IdArray", IdArrayPropertyChanged);
            AddProperty(iIdArray);
            iTracksMax = new PropertyUint("TracksMax", TracksMaxPropertyChanged);
            AddProperty(iTracksMax);
            iProtocolInfo = new PropertyString("ProtocolInfo", ProtocolInfoPropertyChanged);
            AddProperty(iProtocolInfo);

            iPropertyLock = new Mutex();
        }
예제 #25
0
파일: Service.cs 프로젝트: nterry/ohNet
 /// <summary>
 /// Constructor suitable for use by clients of the device stack
 /// </summary>
 /// <param name="aParameter">Parameter defining the name and any set of allowed values for the property.</param>
 /// <param name="aOwnsNativeProperty">Whether the managed property owns the underlying native property.</param>
 public PropertyString(ParameterString aParameter, bool aOwnsNativeProperty = false)
     : base(aOwnsNativeProperty)
 {
     iHandle = ServicePropertyCreateStringDv(aParameter.Handle());
 }
예제 #26
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();
        }
예제 #27
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 CpProxyUpnpOrgAVTransport2(CpDevice aDevice)
            : base("schemas-upnp-org", "AVTransport", 2, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionSetAVTransportURI = new OpenHome.Net.Core.Action("SetAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionSetAVTransportURI.AddInputParameter(param);

            iActionSetNextAVTransportURI = new OpenHome.Net.Core.Action("SetNextAVTransportURI");
            param = new ParameterUint("InstanceID");
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionSetNextAVTransportURI.AddInputParameter(param);

            iActionGetMediaInfo = new OpenHome.Net.Core.Action("GetMediaInfo");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo.AddInputParameter(param);
            param = new ParameterUint("NrTracks", 0, 2147483647);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Add("WRITABLE");
            allowedValues.Add("PROTECTED");
            allowedValues.Add("NOT_WRITABLE");
            allowedValues.Add("UNKNOWN");
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetMediaInfo_Ext = new OpenHome.Net.Core.Action("GetMediaInfo_Ext");
            param = new ParameterUint("InstanceID");
            iActionGetMediaInfo_Ext.AddInputParameter(param);
            allowedValues.Add("NO_MEDIA");
            allowedValues.Add("TRACK_AWARE");
            allowedValues.Add("TRACK_UNAWARE");
            param = new ParameterString("CurrentType", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterUint("NrTracks", 0, 2147483647);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("MediaDuration", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("CurrentURI", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("CurrentURIMetaData", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("NextURI", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("NextURIMetaData", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("PlayMedium", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            param = new ParameterString("RecordMedium", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            allowedValues.Add("WRITABLE");
            allowedValues.Add("PROTECTED");
            allowedValues.Add("NOT_WRITABLE");
            allowedValues.Add("UNKNOWN");
            allowedValues.Add("NOT_IMPLEMENTED");
            param = new ParameterString("WriteStatus", allowedValues);
            iActionGetMediaInfo_Ext.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetTransportInfo = new OpenHome.Net.Core.Action("GetTransportInfo");
            param = new ParameterUint("InstanceID");
            iActionGetTransportInfo.AddInputParameter(param);
            param = new ParameterString("CurrentTransportState", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentTransportStatus", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);
            param = new ParameterString("CurrentSpeed", allowedValues);
            iActionGetTransportInfo.AddOutputParameter(param);

            iActionGetPositionInfo = new OpenHome.Net.Core.Action("GetPositionInfo");
            param = new ParameterUint("InstanceID");
            iActionGetPositionInfo.AddInputParameter(param);
            param = new ParameterUint("Track", 0, 2147483647, 1);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackDuration", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackMetaData", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("TrackURI", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("RelTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterString("AbsTime", allowedValues);
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("RelCount");
            iActionGetPositionInfo.AddOutputParameter(param);
            param = new ParameterInt("AbsCount");
            iActionGetPositionInfo.AddOutputParameter(param);

            iActionGetDeviceCapabilities = new OpenHome.Net.Core.Action("GetDeviceCapabilities");
            param = new ParameterUint("InstanceID");
            iActionGetDeviceCapabilities.AddInputParameter(param);
            param = new ParameterString("PlayMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecMedia", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);
            param = new ParameterString("RecQualityModes", allowedValues);
            iActionGetDeviceCapabilities.AddOutputParameter(param);

            iActionGetTransportSettings = new OpenHome.Net.Core.Action("GetTransportSettings");
            param = new ParameterUint("InstanceID");
            iActionGetTransportSettings.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            allowedValues.Add("SHUFFLE");
            allowedValues.Add("REPEAT_ONE");
            allowedValues.Add("REPEAT_ALL");
            allowedValues.Add("RANDOM");
            allowedValues.Add("DIRECT_1");
            allowedValues.Add("INTRO");
            param = new ParameterString("PlayMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("RecQualityMode", allowedValues);
            iActionGetTransportSettings.AddOutputParameter(param);

            iActionStop = new OpenHome.Net.Core.Action("Stop");
            param = new ParameterUint("InstanceID");
            iActionStop.AddInputParameter(param);

            iActionPlay = new OpenHome.Net.Core.Action("Play");
            param = new ParameterUint("InstanceID");
            iActionPlay.AddInputParameter(param);
            param = new ParameterString("Speed", allowedValues);
            iActionPlay.AddInputParameter(param);

            iActionPause = new OpenHome.Net.Core.Action("Pause");
            param = new ParameterUint("InstanceID");
            iActionPause.AddInputParameter(param);

            iActionRecord = new OpenHome.Net.Core.Action("Record");
            param = new ParameterUint("InstanceID");
            iActionRecord.AddInputParameter(param);

            iActionSeek = new OpenHome.Net.Core.Action("Seek");
            param = new ParameterUint("InstanceID");
            iActionSeek.AddInputParameter(param);
            allowedValues.Add("ABS_TIME");
            allowedValues.Add("REL_TIME");
            allowedValues.Add("ABS_COUNT");
            allowedValues.Add("REL_COUNT");
            allowedValues.Add("TRACK_NR");
            allowedValues.Add("CHANNEL_FREQ");
            allowedValues.Add("TAPE-INDEX");
            allowedValues.Add("FRAME");
            param = new ParameterString("Unit", allowedValues);
            iActionSeek.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Target", allowedValues);
            iActionSeek.AddInputParameter(param);

            iActionNext = new OpenHome.Net.Core.Action("Next");
            param = new ParameterUint("InstanceID");
            iActionNext.AddInputParameter(param);

            iActionPrevious = new OpenHome.Net.Core.Action("Previous");
            param = new ParameterUint("InstanceID");
            iActionPrevious.AddInputParameter(param);

            iActionSetPlayMode = new OpenHome.Net.Core.Action("SetPlayMode");
            param = new ParameterUint("InstanceID");
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Add("NORMAL");
            allowedValues.Add("SHUFFLE");
            allowedValues.Add("REPEAT_ONE");
            allowedValues.Add("REPEAT_ALL");
            allowedValues.Add("RANDOM");
            allowedValues.Add("DIRECT_1");
            allowedValues.Add("INTRO");
            param = new ParameterString("NewPlayMode", allowedValues);
            iActionSetPlayMode.AddInputParameter(param);
            allowedValues.Clear();

            iActionSetRecordQualityMode = new OpenHome.Net.Core.Action("SetRecordQualityMode");
            param = new ParameterUint("InstanceID");
            iActionSetRecordQualityMode.AddInputParameter(param);
            param = new ParameterString("NewRecordQualityMode", allowedValues);
            iActionSetRecordQualityMode.AddInputParameter(param);

            iActionGetCurrentTransportActions = new OpenHome.Net.Core.Action("GetCurrentTransportActions");
            param = new ParameterUint("InstanceID");
            iActionGetCurrentTransportActions.AddInputParameter(param);
            param = new ParameterString("Actions", allowedValues);
            iActionGetCurrentTransportActions.AddOutputParameter(param);

            iActionGetDRMState = new OpenHome.Net.Core.Action("GetDRMState");
            param = new ParameterUint("InstanceID");
            iActionGetDRMState.AddInputParameter(param);
            allowedValues.Add("OK");
            allowedValues.Add("UNKNOWN");
            allowedValues.Add("PROCESSING_CONTENT_KEY");
            allowedValues.Add("CONTENT_KEY_FAILURE");
            allowedValues.Add("ATTEMPTING_AUTHENTICATION");
            allowedValues.Add("FAILED_AUTHENTICATION");
            allowedValues.Add("NOT_AUTHENTICATED");
            allowedValues.Add("DEVICE_REVOCATION");
            param = new ParameterString("CurrentDRMState", allowedValues);
            iActionGetDRMState.AddOutputParameter(param);
            allowedValues.Clear();

            iActionGetStateVariables = new OpenHome.Net.Core.Action("GetStateVariables");
            param = new ParameterUint("InstanceID");
            iActionGetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableList", allowedValues);
            iActionGetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableValuePairs", allowedValues);
            iActionGetStateVariables.AddOutputParameter(param);

            iActionSetStateVariables = new OpenHome.Net.Core.Action("SetStateVariables");
            param = new ParameterUint("InstanceID");
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("AVTransportUDN", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("ServiceType", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("ServiceId", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableValuePairs", allowedValues);
            iActionSetStateVariables.AddInputParameter(param);
            param = new ParameterString("StateVariableList", allowedValues);
            iActionSetStateVariables.AddOutputParameter(param);

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

            iPropertyLock = new Mutex();
        }
예제 #28
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 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 CpProxyUpnpOrgContentDirectory1(CpDevice aDevice)
            : base("schemas-upnp-org", "ContentDirectory", 1, aDevice)
        {
            OpenHome.Net.Core.Parameter param;
            List<String> allowedValues = new List<String>();

            iActionBrowse = new OpenHome.Net.Core.Action("Browse");
            param = new ParameterString("ObjectID", allowedValues);
            iActionBrowse.AddInputParameter(param);
            allowedValues.Add("BrowseMetadata");
            allowedValues.Add("BrowseDirectChildren");
            param = new ParameterString("BrowseFlag", allowedValues);
            iActionBrowse.AddInputParameter(param);
            allowedValues.Clear();
            param = new ParameterString("Filter", allowedValues);
            iActionBrowse.AddInputParameter(param);
            param = new ParameterUint("StartingIndex");
            iActionBrowse.AddInputParameter(param);
            param = new ParameterUint("RequestedCount");
            iActionBrowse.AddInputParameter(param);
            param = new ParameterString("SortCriteria", allowedValues);
            iActionBrowse.AddInputParameter(param);
            param = new ParameterString("Result", allowedValues);
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("NumberReturned");
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("TotalMatches");
            iActionBrowse.AddOutputParameter(param);
            param = new ParameterUint("UpdateID");
            iActionBrowse.AddOutputParameter(param);

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

            iActionShuffle = new OpenHome.Net.Core.Action("Shuffle");
            param = new ParameterString("ContainerID", allowedValues);
            iActionShuffle.AddInputParameter(param);
            param = new ParameterString("Selection", allowedValues);
            iActionShuffle.AddInputParameter(param);
            param = new ParameterString("PlaylistID", allowedValues);
            iActionShuffle.AddOutputParameter(param);
            param = new ParameterString("PlaylistMetadata", allowedValues);
            iActionShuffle.AddOutputParameter(param);

            iActionGetSearchCapabilities = new OpenHome.Net.Core.Action("GetSearchCapabilities");
            param = new ParameterString("SearchCaps", allowedValues);
            iActionGetSearchCapabilities.AddOutputParameter(param);

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

            iActionCreateReference = new OpenHome.Net.Core.Action("CreateReference");
            param = new ParameterString("ContainerID", allowedValues);
            iActionCreateReference.AddInputParameter(param);
            param = new ParameterString("ObjectID", allowedValues);
            iActionCreateReference.AddInputParameter(param);
            param = new ParameterString("NewID", allowedValues);
            iActionCreateReference.AddOutputParameter(param);

            iActionAddContainerToQueue = new OpenHome.Net.Core.Action("AddContainerToQueue");
            param = new ParameterString("QueueID", allowedValues);
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterString("ContainerID", allowedValues);
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterString("SourceID", allowedValues);
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterString("SearchCriteria", allowedValues);
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterString("SortCriteria", allowedValues);
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterUint("StartIndex");
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterUint("EndIndex");
            iActionAddContainerToQueue.AddInputParameter(param);
            param = new ParameterUint("Position");
            iActionAddContainerToQueue.AddInputParameter(param);

            iActionAddItemToQueue = new OpenHome.Net.Core.Action("AddItemToQueue");
            param = new ParameterString("QueueID", allowedValues);
            iActionAddItemToQueue.AddInputParameter(param);
            param = new ParameterString("ObjectID", allowedValues);
            iActionAddItemToQueue.AddInputParameter(param);
            param = new ParameterUint("Position");
            iActionAddItemToQueue.AddInputParameter(param);

            iActionRemoveFromQueue = new OpenHome.Net.Core.Action("RemoveFromQueue");
            param = new ParameterString("QueueID", allowedValues);
            iActionRemoveFromQueue.AddInputParameter(param);
            param = new ParameterUint("FromPosition");
            iActionRemoveFromQueue.AddInputParameter(param);
            param = new ParameterUint("ToPosition");
            iActionRemoveFromQueue.AddInputParameter(param);
            param = new ParameterUint("ContainerUpdateID");
            iActionRemoveFromQueue.AddOutputParameter(param);

            iActionCreateQueue = new OpenHome.Net.Core.Action("CreateQueue");
            param = new ParameterString("DesiredName", allowedValues);
            iActionCreateQueue.AddInputParameter(param);
            param = new ParameterString("ContainerID", allowedValues);
            iActionCreateQueue.AddInputParameter(param);
            param = new ParameterString("GivenName", allowedValues);
            iActionCreateQueue.AddOutputParameter(param);
            param = new ParameterString("QueueID", allowedValues);
            iActionCreateQueue.AddOutputParameter(param);
            param = new ParameterString("MetaData", allowedValues);
            iActionCreateQueue.AddOutputParameter(param);

            iActionRenameQueue = new OpenHome.Net.Core.Action("RenameQueue");
            param = new ParameterString("QueueID", allowedValues);
            iActionRenameQueue.AddInputParameter(param);
            param = new ParameterString("DesiredName", allowedValues);
            iActionRenameQueue.AddInputParameter(param);
            param = new ParameterString("GivenName", allowedValues);
            iActionRenameQueue.AddOutputParameter(param);

            iActionMoveInQueue = new OpenHome.Net.Core.Action("MoveInQueue");
            param = new ParameterString("ObjectID", allowedValues);
            iActionMoveInQueue.AddInputParameter(param);
            param = new ParameterUint("NewPosition");
            iActionMoveInQueue.AddInputParameter(param);
            param = new ParameterUint("ContainerUpdateID");
            iActionMoveInQueue.AddOutputParameter(param);

            iActionDestroyObject = new OpenHome.Net.Core.Action("DestroyObject");
            param = new ParameterString("ObjectID", allowedValues);
            iActionDestroyObject.AddInputParameter(param);

            iActionResetDatabase = new OpenHome.Net.Core.Action("ResetDatabase");
            allowedValues.Add("RESET_ALL");
            allowedValues.Add("RESET_USERDATA");
            allowedValues.Add("RESET_INDEX");
            param = new ParameterString("Scope", allowedValues);
            iActionResetDatabase.AddInputParameter(param);
            allowedValues.Clear();

            iActionGetSystemUpdateID = new OpenHome.Net.Core.Action("GetSystemUpdateID");
            param = new ParameterUint("Id");
            iActionGetSystemUpdateID.AddOutputParameter(param);

            iActionGetIndexerStatus = new OpenHome.Net.Core.Action("GetIndexerStatus");
            param = new ParameterString("Status", allowedValues);
            iActionGetIndexerStatus.AddOutputParameter(param);

            iActionGetSourceInfo = new OpenHome.Net.Core.Action("GetSourceInfo");
            param = new ParameterString("SourceID", allowedValues);
            iActionGetSourceInfo.AddInputParameter(param);
            param = new ParameterUint("NumTracks");
            iActionGetSourceInfo.AddOutputParameter(param);
            param = new ParameterUint("TotalSize");
            iActionGetSourceInfo.AddOutputParameter(param);
            param = new ParameterUint("TotalDuration");
            iActionGetSourceInfo.AddOutputParameter(param);
            param = new ParameterUint("ScanProgress");
            iActionGetSourceInfo.AddOutputParameter(param);
            allowedValues.Add("NONE");
            allowedValues.Add("SUCCESS");
            allowedValues.Add("MOUNTING_FAILED");
            allowedValues.Add("UNREACHABLE");
            param = new ParameterString("IndexerResult", allowedValues);
            iActionGetSourceInfo.AddOutputParameter(param);
            allowedValues.Clear();

            iActionRescanSource = new OpenHome.Net.Core.Action("RescanSource");
            param = new ParameterString("SourceID", allowedValues);
            iActionRescanSource.AddInputParameter(param);
            allowedValues.Add("FindNewTracks");
            allowedValues.Add("DoFullRescan");
            param = new ParameterString("RescanMode", allowedValues);
            iActionRescanSource.AddInputParameter(param);
            allowedValues.Clear();

            iActionQueryDatabaseState = new OpenHome.Net.Core.Action("QueryDatabaseState");
            param = new ParameterUint("CurrentNumResources");
            iActionQueryDatabaseState.AddOutputParameter(param);
            param = new ParameterUint("CriticalNumResources");
            iActionQueryDatabaseState.AddOutputParameter(param);
            param = new ParameterUint("CurrentDiskUsage");
            iActionQueryDatabaseState.AddOutputParameter(param);
            param = new ParameterUint("MaxDiskUsage");
            iActionQueryDatabaseState.AddOutputParameter(param);

            iSystemUpdateID = new PropertyUint("SystemUpdateID", SystemUpdateIDPropertyChanged);
            AddProperty(iSystemUpdateID);
            iContainerUpdateIDs = new PropertyString("ContainerUpdateIDs", ContainerUpdateIDsPropertyChanged);
            AddProperty(iContainerUpdateIDs);
            iIndexerStatus = new PropertyString("IndexerStatus", IndexerStatusPropertyChanged);
            AddProperty(iIndexerStatus);
            iA_ARG_TYPE_Scope = new PropertyString("A_ARG_TYPE_Scope", A_ARG_TYPE_ScopePropertyChanged);
            AddProperty(iA_ARG_TYPE_Scope);

            iPropertyLock = new Mutex();
        }