OSDN Git Service

RIO-7945: Introduce new command status code in the Base node
authorPacketVideo CM <engbuild@pv.com>
Thu, 12 Nov 2009 20:46:32 +0000 (12:46 -0800)
committerPacketVideo CM <engbuild@pv.com>
Thu, 12 Nov 2009 20:46:32 +0000 (12:46 -0800)
engines/2way/src/pv_2way_sdkinfo.h
engines/author/src/pv_author_sdkinfo.h
engines/player/src/pv_player_sdkinfo.h
pvmi/pvmf/include/pvmf_return_codes.h
pvmi/pvmf/src/pvmf_node_interface_impl.cpp

index f90c2a1..c098452 100644 (file)
@@ -21,7 +21,7 @@
 // This header file is automatically generated at build-time
 // *** OFFICIAL RELEASE INFO -- Will not auto update
 
-#define PV2WAY_ENGINE_SDKINFO_LABEL "1068577"
-#define PV2WAY_ENGINE_SDKINFO_DATE 0x20091105
+#define PV2WAY_ENGINE_SDKINFO_LABEL "1068765"
+#define PV2WAY_ENGINE_SDKINFO_DATE 0x20091106
 
 #endif //PV_2WAY_SDKINFO_H_INCLUDED
index 3dbd95e..9b15f15 100644 (file)
@@ -21,7 +21,7 @@
 // This header file is automatically generated at build-time
 // *** OFFICIAL RELEASE INFO -- Will not auto update
 
-#define PVAUTHOR_ENGINE_SDKINFO_LABEL "1068577"
-#define PVAUTHOR_ENGINE_SDKINFO_DATE 0x20091105
+#define PVAUTHOR_ENGINE_SDKINFO_LABEL "1068765"
+#define PVAUTHOR_ENGINE_SDKINFO_DATE 0x20091106
 
 #endif //PV_AUTHOR_SDKINFO_H_INCLUDED
index b14de3f..a74088a 100644 (file)
@@ -21,7 +21,7 @@
 // This header file is automatically generated at build-time
 // *** OFFICIAL RELEASE INFO -- Will not auto update
 
-#define PVPLAYER_ENGINE_SDKINFO_LABEL "1068577"
-#define PVPLAYER_ENGINE_SDKINFO_DATE 0x20091105
+#define PVPLAYER_ENGINE_SDKINFO_LABEL "1068765"
+#define PVPLAYER_ENGINE_SDKINFO_DATE 0x20091106
 
 #endif //PV_PLAYER_SDKINFO_H_INCLUDED
index d54f308..f4fd218 100644 (file)
@@ -47,6 +47,10 @@ const PVMFStatus PVMFPending = 0;
  Return code for never set
  */
 const PVMFStatus PVMFNotSet = 2;
+/*
+ Return code for Command Complete
+ */
+const PVMFStatus PVMFCmdCompleted = 3;
 
 
 // Error codes (negative values)
index 7a3d698..18c7ec4 100644 (file)
@@ -610,10 +610,10 @@ OSCL_EXPORT_REF bool PVMFNodeInterfaceImpl::ProcessCommand()
     //until the prior one is finished.  However, a hi priority
     //command such as Cancel must be able to interrupt a command
     //in progress.
-    OsclAny* eventData = NULL;
     if (IsCommandInProgress(iCurrentCommand) && !cmd.hipri() && PVMF_GENERIC_NODE_CANCEL_GET_LICENSE != cmd.iCmd)
         return false;
 
+    OsclAny* eventData = NULL;
     PVMFStatus status = PVMFErrInvalidState;
 
     // Pop the first command from the input queue to CancelCommand if its cancel or cancelall command.
@@ -638,7 +638,7 @@ OSCL_EXPORT_REF bool PVMFNodeInterfaceImpl::ProcessCommand()
                 break;
         }
 
-        if (status != PVMFPending)
+        if ((status != PVMFPending) && (status != PVMFCmdCompleted))
         {
             CommandComplete(iCancelCommand, status);
         }
@@ -681,6 +681,7 @@ OSCL_EXPORT_REF bool PVMFNodeInterfaceImpl::ProcessCommand()
                 }
             }
             break;
+
             case PVMF_GENERIC_NODE_PREPARE:
             {
                 if (iInterfaceState == EPVMFNodeInitialized)
@@ -740,14 +741,14 @@ OSCL_EXPORT_REF bool PVMFNodeInterfaceImpl::ProcessCommand()
                 break;
         }
 
-        if (status != PVMFPending)
+        if ((status != PVMFPending) && (status != PVMFCmdCompleted))
         {
             CommandComplete(iCurrentCommand, status, NULL, eventData);
         }
     }
     if (status != PVMFPending)
     {
-        // node needs to be reschduled, if there's any command
+        // node needs to be rescheduled, if there's any command
         // pending to be executed
         if (iInputCommands.size() > 0)
         {