예제 #1
0
 public void AddWeakEvent_Result_Seek(Delegate_OnResult_Seek d)
 {
     WeakList_Seek.Add(new WeakReference(d));
 }
 public void Seek(System.UInt32 InstanceID, Enum_A_ARG_TYPE_SeekMode Unit, System.String Target, object _Tag, Delegate_OnResult_Seek _Callback)
 {
     UPnPArgument[] args = new UPnPArgument[3];
        args[0] = new UPnPArgument("InstanceID", InstanceID);
        switch(Unit)
        {
        case Enum_A_ARG_TYPE_SeekMode.ABS_TIME:
            args[1] = new UPnPArgument("Unit", "ABS_TIME");
            break;
        case Enum_A_ARG_TYPE_SeekMode.REL_TIME:
            args[1] = new UPnPArgument("Unit", "REL_TIME");
            break;
        case Enum_A_ARG_TYPE_SeekMode.ABS_COUNT:
            args[1] = new UPnPArgument("Unit", "ABS_COUNT");
            break;
        case Enum_A_ARG_TYPE_SeekMode.REL_COUNT:
            args[1] = new UPnPArgument("Unit", "REL_COUNT");
            break;
        case Enum_A_ARG_TYPE_SeekMode.TRACK_NR:
            args[1] = new UPnPArgument("Unit", "TRACK_NR");
            break;
        case Enum_A_ARG_TYPE_SeekMode.CHANNEL_FREQ:
            args[1] = new UPnPArgument("Unit", "CHANNEL_FREQ");
            break;
        case Enum_A_ARG_TYPE_SeekMode.TAPE_INDEX:
            args[1] = new UPnPArgument("Unit", "TAPE-INDEX");
            break;
        case Enum_A_ARG_TYPE_SeekMode.FRAME:
            args[1] = new UPnPArgument("Unit", "FRAME");
            break;
        default:
           args[1] = new UPnPArgument("Unit", GetUnspecifiedValue("Enum_A_ARG_TYPE_SeekMode"));
           break;
        }
        args[2] = new UPnPArgument("Target", Target);
        _S.InvokeAsync("Seek", args, new object[2]{_Tag,_Callback}, new UPnPService.UPnPServiceInvokeHandler(Sink_Seek), new UPnPService.UPnPServiceInvokeErrorHandler(Error_Sink_Seek));
 }