Revision: 201009
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 16 Apr 2010 16:02:30 +0300
changeset 16 ae43a6765dd5
parent 15 6c92a12abac0
child 18 2c61986c60fa
Revision: 201009 Kit: 201015
package_definition.xml
videoconnutility/connutility/src/vcxconnutilimpl.cpp
videoscheduler/SchedulerClient/src/CCseScheduledProgram.cpp
videoscheduler/SchedulerClient/src/CCseSchedulerAPI.cpp
videoscheduler/SchedulerClient/src/RCseSchedulerClient.cpp
videoscheduler/SchedulerClient/src/RCseSchedulerService.cpp
videoscheduler/SchedulerClient/src/RCseSchedulerServiceBase.cpp
videoscheduler/SchedulerServer/data/102750D5.rss
videoscheduler/SchedulerServer/inc/CCseSchedulerPluginControllerBase.h
videoscheduler/SchedulerServer/inc/CCseSchedulerPluginStarter.h
videoscheduler/SchedulerServer/inc/CCseSchedulerServerEngine.h
videoscheduler/SchedulerServer/src/CCseScheduleDB.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerLandLord.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerMultiPluginController.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerPluginControllerBase.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerPluginStarter.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerServer.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerServerEngine.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerServerSession.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerThreadPacket.cpp
videoscheduler/SchedulerServer/src/CCseSchedulerUniPluginController.cpp
videoutils_plat/videoplayer_constants_api/inc/mpxvideoplaybackdefs.h
videoutils_plat/videoplayer_constants_api/inc/vcxmyvideosdefs.h
--- a/package_definition.xml	Fri Mar 19 09:48:59 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<SystemDefinition schema="3.0.0">
-  <package id="videoutils" name="Video Utils" levels="eng util if">
-    <collection id="dvrengine" name="DVR Engine" level="eng">
-      <component id="commonrecordingengine" filter="s60" name="Common Recording Engine">
-     		<!--  can only have one unit, #include the others from the main nit -->
-        <unit bldFile="dvrengine/commonrecordingengine/group"/>
-        <unit bldFile="dvrengine/commonrecordingengine/dvrrtpcliphandler/group"/>
-        <unit bldFile="dvrengine/commonrecordingengine/dvrrtpcliprecognizer/group"/>
-        <unit bldFile="dvrengine/commonrecordingengine/dvrrtputils/group"/>
-      </component>
-      <component id="commonrecordingengineclient" filter="s60" name="Common Recording Engine Client">
-        <unit bldFile="dvrengine/commonrecordingengineclient/group"/>
-      </component>
-      <component id="dvrengine_build" filter="s60" name="DVR Engine Build">
-      	<!-- should split this into the bld.infs above -->
-        <unit bldFile="dvrengine/group"/>
-      </component>
-    </collection>
-    <collection id="videoconnutility" name="Video Connection Utility" level="util">
-      <component id="connutilpsworker" filter="s60" name="Connection Utility Publish and Subscribe Worker">
-        <unit bldFile="videoconnutility/connutilpsworker/group"/>
-      </component>
-      <component id="videoconnutility_build" filter="s60" name="Video Connection Utility Build">
-        <unit bldFile="videoconnutility/group"/>
-      </component>
-    </collection>
-    <collection id="videoscheduler" name="Video Scheduler" level="util">
-      <component id="schedulerclient" filter="s60" name="Video Scheduler Client">
-        <unit bldFile="videoscheduler/schedulerclient/group"/>
-      </component>
-      <component id="schedulerserver" filter="s60" name="Video Scheduler Server">
-        <unit bldFile="videoscheduler/schedulerserver/group"/>
-      </component>
-      <component id="videoscheduler_build" filter="s60" name="Video Scheduler Build">
-      	<!-- is this needed at all? Can the system include just be put in the above bld.infs? -->
-        <unit bldFile="videoscheduler/group"/>
-      </component>
-    </collection>
-    <collection id="videoutils_info" name="Video Utils Info" level="if">
-      <component id="videoutils_plat" filter="s60" name="Video Utils Platform Interfaces" class="api">
-        <unit bldFile="videoutils_plat/group"/>
-        	<!-- do these test units  need to be #included in the above bld.inf? -->
-        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/group"/> -->
-        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxconnutiltestexe/group"/> -->
-        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxtestcommon/group"/> -->
-        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxtestutilmodule/group"/> -->
-        <!-- <unit bldFile="videoutils_plat/videoscheduler_api/tsrc/group"/> -->
-      </component>
-      <component id="videoutils_build" filter="s60" name="Video Utils Build">
-      	<!--  can this be split up into the above components?? -->
-        <unit bldFile="group"/>
-      </component>
-    </collection>
-  </package>
-</SystemDefinition>
--- a/videoconnutility/connutility/src/vcxconnutilimpl.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoconnutility/connutility/src/vcxconnutilimpl.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -22,12 +22,12 @@
 #include <bldvariant.hrh>
 #include <commdb.h>            // CMDBSession
 #include <commsdattypesv1_1.h> // CCDWAPIPBearerRecord
-#include <connectionuiutilities.h> 
+#include <ConnectionUiUtilities.h> 
 #include <cmdestination.h>
 #include <cdbcols.h>
 #include <commdbconnpref.h>
 #include <eikbtgrp.h>
-#include <wlancdbcols.h>
+#include <WlanCdbCols.h>
 #include <connpref.h>
 #include <extendedconnpref.h>
 #include <mpxlog.h>
--- a/videoscheduler/SchedulerClient/src/CCseScheduledProgram.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerClient/src/CCseScheduledProgram.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDES
-#include <ipvideo/ccsescheduledprogram.h>   // Header file for this class
+#include <ipvideo/CCseScheduledProgram.h>   // Header file for this class
 #include "CseDebug.h"               // Debug macros
 
 // EXTERNAL DATA STRUCTURES
--- a/videoscheduler/SchedulerClient/src/CCseSchedulerAPI.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerClient/src/CCseSchedulerAPI.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -17,10 +17,10 @@
 
 
 // INCLUDE FILES
-#include <ipvideo/ccseschedulerapi.h>                   // Header file for this class
-#include <ipvideo/ccsescheduledprogram.h>               // Represent one schedule in database
-#include <ipvideo/cseschedulerclientservercommon.h>     // Common defines for client and server
-#include <ipvideo/rcseschedulerclient.h>                // Client common methods (server start up etc)
+#include <ipvideo/CCseSchedulerAPI.h>                   // Header file for this class
+#include <ipvideo/CCseScheduledProgram.h>               // Represent one schedule in database
+#include <ipvideo/CseSchedulerClientServerCommon.h>     // Common defines for client and server
+#include <ipvideo/RCseSchedulerClient.h>                // Client common methods (server start up etc)
 #include "CseDebug.h"                           // Debug macros
 #include <s32mem.h>
 
--- a/videoscheduler/SchedulerClient/src/RCseSchedulerClient.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerClient/src/RCseSchedulerClient.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -17,9 +17,9 @@
 
 
 // INCLUDE FILES
-#include <ipvideo/rcseschedulerclient.h>            // Header for this class
+#include <ipvideo/RCseSchedulerClient.h>            // Header for this class
 #include "CseDebug.h"                       // Debug macros
-#include <ipvideo/cseschedulerclientservercommon.h> // Common defines for client and server
+#include <ipvideo/CseSchedulerClientServerCommon.h> // Common defines for client and server
 #include <e32math.h>
 #include <f32file.h>
 
--- a/videoscheduler/SchedulerClient/src/RCseSchedulerService.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerClient/src/RCseSchedulerService.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -19,10 +19,10 @@
 
 
 // INCLUDE FILES
-#include <ipvideo/rcseschedulerservice.h>               // Header fo this class
-#include <ipvideo/ccsescheduledprogram.h>               // Represent one schedule in database
+#include <ipvideo/RCseSchedulerService.h>               // Header fo this class
+#include <ipvideo/CCseScheduledProgram.h>               // Represent one schedule in database
 #include "CseDebug.h"                           // Debug macros
-#include <ipvideo/cseschedulerclientservercommon.h>     // Client common methods (server start up etc)
+#include <ipvideo/CseSchedulerClientServerCommon.h>     // Client common methods (server start up etc)
 #include <s32mem.h>
 
 // EXTERNAL DATA STRUCTURES
--- a/videoscheduler/SchedulerClient/src/RCseSchedulerServiceBase.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerClient/src/RCseSchedulerServiceBase.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -19,10 +19,10 @@
 
 
 // INCLUDE FILES
-#include <ipvideo/rcseschedulerservicebase.h>       // Client common methods (open, close etc)
-#include <ipvideo/rcseschedulerclient.h>            // Client common methods (server start up etc)
+#include <ipvideo/RCseSchedulerServiceBase.h>       // Client common methods (open, close etc)
+#include <ipvideo/RCseSchedulerClient.h>            // Client common methods (server start up etc)
 #include "CseDebug.h"                       // Debug macros
-#include <ipvideo/cseschedulerclientservercommon.h> // Common defines for client and server
+#include <ipvideo/CseSchedulerClientServerCommon.h> // Common defines for client and server
 
 // EXTERNAL DATA STRUCTURES
 // None.
--- a/videoscheduler/SchedulerServer/data/102750D5.rss	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/data/102750D5.rss	Fri Apr 16 16:02:30 2010 +0300
@@ -18,7 +18,7 @@
 
 
 
-#include <startupitem.rh>
+#include <StartupItem.rh>
 
 RESOURCE STARTUP_ITEM_INFO CseSchedulerServer
 {
--- a/videoscheduler/SchedulerServer/inc/CCseSchedulerPluginControllerBase.h	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/inc/CCseSchedulerPluginControllerBase.h	Fri Apr 16 16:02:30 2010 +0300
@@ -22,8 +22,8 @@
 
 // INCLUDES
 #include <e32base.h>
-#include <ipvideo/mcsepluginobserver.h>
-#include <ipvideo/mcsescheduleobserver.h>
+#include <ipvideo/MCsePluginObserver.h>
+#include <ipvideo/MCseScheduleObserver.h>
 #include "MCseSchedulerTimerObserver.h"
 #include "MCsePluginControllerObserver.h"
 
--- a/videoscheduler/SchedulerServer/inc/CCseSchedulerPluginStarter.h	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/inc/CCseSchedulerPluginStarter.h	Fri Apr 16 16:02:30 2010 +0300
@@ -21,7 +21,7 @@
 
 // INCLUDES
 #include <e32base.h>
-#include <ipvideo/mcsepluginobserver.h>
+#include <ipvideo/MCsePluginObserver.h>
 #include "MCseSemaphoreSignalObserver.h"
 
 // CONSTANTS
--- a/videoscheduler/SchedulerServer/inc/CCseSchedulerServerEngine.h	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/inc/CCseSchedulerServerEngine.h	Fri Apr 16 16:02:30 2010 +0300
@@ -21,7 +21,7 @@
 #define __CCSESCHEDULERSERVERENGINE_H
 
 //  INCLUDES
-#include <ipvideo/mcsescheduleobserver.h>   // Observer so that CCseSchedulerTimer can inform engine.
+#include <ipvideo/MCseScheduleObserver.h>   // Observer so that CCseSchedulerTimer can inform engine.
 #include "MCsePluginControllerObserver.h"   // Observer so that CCseSchedulerTimer can inform engine.
 #include "CseSchedulerServer.pan"   // Panic codes
 
--- a/videoscheduler/SchedulerServer/src/CCseScheduleDB.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseScheduleDB.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -19,7 +19,7 @@
 
 // INCLUDE FILES
 #include "CCseScheduleDB.h"         // Header file for this class
-#include <ipvideo/ccsescheduledprogram.h>   // Represent one schedule in database
+#include <ipvideo/CCseScheduledProgram.h>   // Represent one schedule in database
 #include <bautils.h>
 #include "CseDebug.h"               // Debug macros
 #include <babackup.h>
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerLandLord.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerLandLord.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -19,9 +19,9 @@
 
 #include "CCseSchedulerLandLord.h"
 #include "CCseSchedulerPluginStarter.h"
-#include <ipvideo/ccsescheduledprogram.h>
+#include <ipvideo/CCseScheduledProgram.h>
 #include "CCseSchedulerThreadPacket.h"
-#include <ipvideo/mcsescheduleobserver.h>   // Observer for informing engine
+#include <ipvideo/MCseScheduleObserver.h>   // Observer for informing engine
 #include <e32std.h>
 #include "CseDebug.h"               // Debug macros
 #include "CCseSemaphoreController.h"
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerMultiPluginController.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerMultiPluginController.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -23,7 +23,7 @@
 #include "CseDebug.h"                           // Debug macros
 #include "CCseSchedulerPluginStarter.h"
 #include "CCseSchedulerLandLord.h"
-#include <ipvideo/ccsescheduledprogram.h>
+#include <ipvideo/CCseScheduledProgram.h>
 #include "CCseSchedulerTimer.h"
 #include "CCseSchedulerServerEngine.h"
 #include "CCseSchedulerThreadPacket.h"
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerPluginControllerBase.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerPluginControllerBase.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -21,7 +21,7 @@
 // INCLUDE FILES
 #include "CCseSchedulerPluginControllerBase.h"
 #include "CseDebug.h"                           // Debug macros
-#include <ipvideo/ccsescheduledprogram.h>
+#include <ipvideo/CCseScheduledProgram.h>
 #include "CCseSchedulerTimer.h"
 #include "CCseSchedulerServerEngine.h"
 
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerPluginStarter.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerPluginStarter.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -21,8 +21,8 @@
 // INCLUDE FILES
 #include "CCseSchedulerPluginStarter.h"
 #include "CseDebug.h"                           // Debug macros
-#include <ipvideo/ccsescheduledprogram.h>   // Represent one schedule in database
-#include <ipvideo/ccseschedulerpluginif.h>
+#include <ipvideo/CCseScheduledProgram.h>   // Represent one schedule in database
+#include <ipvideo/CCseSchedulerPluginIF.h>
 #include "CCseSchedulerThreadPacket.h"
 #include "CCseSemaphoreController.h"
 
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerServer.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerServer.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -21,7 +21,7 @@
 #include "CCseSchedulerServer.h"                // Header file for this class
 #include "CCseSchedulerServerSession.h"         // Server session
 #include "CCseSchedulerServerEngine.h"          // Server intelligence aka engine
-#include <ipvideo/cseschedulerclientservercommon.h>     // Common defines for client and server
+#include <ipvideo/CseSchedulerClientServerCommon.h>     // Common defines for client and server
 #include "CseSchedulerServer.pan"               // Server panic codes
 #include "CseDebug.h"                           // Debug macros
 #include <e32svr.h>
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerServerEngine.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerServerEngine.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -23,12 +23,12 @@
 #include <e32def.h>
 #include <e32const.h>
 #include "CCseSchedulerServerEngine.h"      // Common methods for server
-#include <ipvideo/cseschedulerclientservercommon.h> // Common defines for client and server
-#include <ipvideo/ccsescheduledprogram.h>           // Represent one schedule in database
+#include <ipvideo/CseSchedulerClientServerCommon.h> // Common defines for client and server
+#include <ipvideo/CCseScheduledProgram.h>           // Represent one schedule in database
 #include "CseDebug.h"                       // Debug macros
 #include "CCseScheduleDB.h"                 // Schedule database
 #include "CCseSchedulerTimer.h"             // Schedule timer for determining schedule times
-#include <ipvideo/ccseschedulerpluginif.h>          // Scheduler plugin interface
+#include <ipvideo/CCseSchedulerPluginIF.h>          // Scheduler plugin interface
 #include "CCseSchedulerUniPluginController.h"
 #include "CCseSchedulerMultiPluginController.h"
 #include "CCseSchedulerServer.h"
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerServerSession.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerServerSession.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -22,7 +22,7 @@
 #include "CCseSchedulerServer.h"                // Common methods for server
 #include "CCseSchedulerServerEngine.h"          // Intelligence aka engine of server
 #include "CseSchedulerServer.pan"               // Server panic codes
-#include <ipvideo/cseschedulerclientservercommon.h>     // Common defines for client and server
+#include <ipvideo/CseSchedulerClientServerCommon.h>     // Common defines for client and server
 #include "CseDebug.h"                           // Debug macros
 
 // EXTERNAL DATA STRUCTURES
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerThreadPacket.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerThreadPacket.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -19,7 +19,7 @@
 
 // INCLUDE FILES
 #include "CCseSchedulerThreadPacket.h"
-#include <ipvideo/ccsescheduledprogram.h>   // Represent one schedule in database
+#include <ipvideo/CCseScheduledProgram.h>   // Represent one schedule in database
 #include <e32std.h>
 #include "CseDebug.h"               // Debug macros
 
--- a/videoscheduler/SchedulerServer/src/CCseSchedulerUniPluginController.cpp	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoscheduler/SchedulerServer/src/CCseSchedulerUniPluginController.cpp	Fri Apr 16 16:02:30 2010 +0300
@@ -23,7 +23,7 @@
 #include "CseDebug.h"                           // Debug macros
 #include "CCseSchedulerPluginStarter.h"
 #include "CCseSchedulerLandLord.h"
-#include <ipvideo/ccsescheduledprogram.h>
+#include <ipvideo/CCseScheduledProgram.h>
 #include "CCseSchedulerTimer.h"
 #include "CCseSchedulerServerEngine.h"
 
--- a/videoutils_plat/videoplayer_constants_api/inc/mpxvideoplaybackdefs.h	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoutils_plat/videoplayer_constants_api/inc/mpxvideoplaybackdefs.h	Fri Apr 16 16:02:30 2010 +0300
@@ -15,7 +15,7 @@
 */
 
 
-// Version : %version: 6 %
+// Version : %version: 7 %
 
 
 #ifndef CMPXVIDEOPLAYBACKDEFS_H
@@ -120,7 +120,8 @@
     EPbCmdHandleDecreaseVolume,
     EPbCmdCustomPause,
     EPbCmdCustomPlay,
-    EPbCmdRetrieveBufferingPercentage
+    EPbCmdRetrieveBufferingPercentage,
+    EPbCmdSurfaceRemoved
 };
 
 enum TMPXGeneralError
@@ -165,7 +166,8 @@
 {
     EPbMsgVideoSurfaceCreated,
     EPbMsgVideoSurfaceChanged,
-    EPbMsgVideoSurfaceRemoved
+    EPbMsgVideoSurfaceRemoved,
+    EPbMsgVideoRemoveDisplayWindow
 };
 
 
--- a/videoutils_plat/videoplayer_constants_api/inc/vcxmyvideosdefs.h	Fri Mar 19 09:48:59 2010 +0200
+++ b/videoutils_plat/videoplayer_constants_api/inc/vcxmyvideosdefs.h	Fri Apr 16 16:02:30 2010 +0300
@@ -2,7 +2,7 @@
 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
+* under the terms of "Eclipse Public License v1.0"
 * which accompanies this distribution, and is available
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
 *
@@ -26,10 +26,14 @@
 #include <mdeconstants.h>
 #include <mpxcollectionpath.h>
 
+//These are written to TMPXItemId::iId2
+const TInt KVcxMvcMediaTypeVideo    = 0;
+const TInt KVcxMvcMediaTypeCategory = 1;
+const TInt KVcxMvcMediaTypeAlbum    = 2;
+
 /**
 * My Videos Collection category IDs.
-* MPX ID has this as iId1 member and 1 as iId2.
-* These are same as indexes in path.
+* TMPXItemId has these as iId1 member and KVcxMvcMediaTypeCategory as iId2.
 */
 const TInt KVcxMvcCategoryIdAll          = 0;
 const TInt KVcxMvcCategoryIdDownloads    = 1;
@@ -459,13 +463,19 @@
 
 /**
  * 35.
+ * TUint32, general parameter, the usage depends on context.
+ * Not saved to MDS
+ */
+const TMPXAttributeData KVcxMediaMyVideosUint32Value = {KVcxMediaIdMyVideos, 1 << 23};
+
+/**
+ * 36.
  * TUint32, transaction ID, client sets this field when making asynchronous request.
  * Collection sets the same ID to response messages. Client can use this to pair
  * requests and responses.
  * Not saved to MDS
  */
-const TMPXAttributeData KVcxMediaMyVideosTransactionId = {KVcxMediaIdMyVideos, 1 << 23};
-
+const TMPXAttributeData KVcxMediaMyVideosTransactionId = {KVcxMediaIdMyVideos, 1 << 24};
 
 
 // -------- end of my videos media attributes -------- //
@@ -490,6 +500,10 @@
 const TInt KVcxCommandMyVideosMove                       = 6; //async
 const TInt KVcxCommandMyVideosCopy                       = 7; //async
 const TInt KVcxCommandMyVideosDelete                     = 8; //async
+const TInt KVcxCommandMyVideosAddToAlbum                 = 9; //async
+const TInt KVcxCommandMyVideosRemoveFromAlbum            = 10; //async
+const TInt KVcxCommandMyVideosAddAlbum                   = 11; //async & sync
+const TInt KVcxCommandMyVideosRemoveAlbums               = 12; //async
 
 /** This command cancels the move or copy operation only if it
  *  is allready being processed by the collection plugin. If the
@@ -497,7 +511,7 @@
  *  If Move or Copy operations were not in progress the command
  *  leaves with KErrNotFound.
  */
-const TInt KVcxCommandMyVideosCancelMoveOrCopy = 9; //sync
+const TInt KVcxCommandMyVideosCancelMoveOrCopy = 13; //sync
 
 /** This command cancels the delete operation only if it
  *  is allready being processed by the collection plugin. If the
@@ -505,9 +519,9 @@
  *  If delete operation was not in progress the command
  *  leaves with KErrNotFound.
  */
-const TInt KVcxCommandMyVideosCancelDelete = 10; //sync
+const TInt KVcxCommandMyVideosCancelDelete = 14; //sync
 
-const TInt KVcxMessageMyVideosGetMediasByMpxIdResp = 11;
+const TInt KVcxMessageMyVideosGetMediasByMpxIdResp = 15;
 
 /**
 * Collection sends this message when new items are added
@@ -520,7 +534,7 @@
 * are broadcasted to all clients. So they might appear even when client hasn't
 * done OpenL.
 */
-const TInt KVcxMessageMyVideosItemsAppended = 12; //event
+const TInt KVcxMessageMyVideosItemsAppended = 16; //event
 
 /**
 * Collection sends this message when media list fetching has ended
@@ -531,32 +545,32 @@
 * in the list it had received earlier (unless client itself initiated the new fetching
 * by calling OpenL().
 */
-const TInt KVcxMessageMyVideosListComplete = 13; //event
+const TInt KVcxMessageMyVideosListComplete = 17; //event
 
 /* Collection sends this message when it starts processing
  * Move Or Copy command. When this event is received,
  * KVcxCommandMyVideosCancelMoveOrCopy can be sent. 
  */
-const TInt KVcxMessageMyVideosMoveOrCopyStarted = 14; //event
+const TInt KVcxMessageMyVideosMoveOrCopyStarted = 18; //event
 
 /* Collection sends this message when it starts processing
  * KVcxCommandMyVideosDelete command. After this event is received,
  * KVcxCommandMyVideosCancelDelete can be sent. 
  */
-const TInt KVcxMessageMyVideosDeleteStarted = 15; //event
+const TInt KVcxMessageMyVideosDeleteStarted = 19; //event
 
 /* End events for Move/Copy/Delete operations. The response contains
  * MDS ID and error codes for each item.
  */
-const TInt KVcxMessageMyVideosMoveResp   = 16; //event 
-const TInt KVcxMessageMyVideosCopyResp   = 17; //event
-const TInt KVcxMessageMyVideosDeleteResp = 18; //event
+const TInt KVcxMessageMyVideosMoveResp   = 20; //event 
+const TInt KVcxMessageMyVideosCopyResp   = 21; //event
+const TInt KVcxMessageMyVideosDeleteResp = 22; //event
 
 /**
 * Indicates that media array variable contains other messages.
 * This message is only sent as the highest level item in the message tree.
 */
-const TInt KVcxMessageMyVideosMessageArray = 19;
+const TInt KVcxMessageMyVideosMessageArray = 23;
 
 /*
  OpenL() (video list) MSC
@@ -565,10 +579,7 @@
  video list at the same time. The scenario described below involves video list fetching from MDS. If the collection
  has the video list already fetched, then the HandleOpenL will contain all videos and KVcxMessageMyVideosListComplete
  is received immedetially.
- 
- KVcxMessageMyVideosItemsAppended and KVcxMessageMyVideosListComplete events concern only video lists.
- Category level always returns all categories at HandleOpenL.
- 
+  
                  .------.                                                                 .-------------------------.
                  |CLIENT|                                                                 |MPX My Videos Collection |
                  '------'                                                                 '-------------------------'
@@ -616,116 +627,6 @@
                     |                                                                                  |
 
 
- DOWNLOAD START MSC
- ------------------
- 
- In future download request parameters can be made to contain media array of download parameters,
- allowing multiple downloads. Currently it is not supported.
- 
-                 .------.                                                                 .-------------------------.
-                 |CLIENT|                                                                 |MPX My Videos Collection |
-                 '------'                                                                 '-------------------------'
-                    |                                                                                  |
-                    |                                                                                  |
-iCollectionUtility->Collection().CommandL( *downloadStartCommand )                                     |
-                                                                                                       |
-downloadStartCommand (CMPXCommand type) contains:                                                      |
-    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
-    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosStartDownload                                  |
-    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection                                      |
-    KMPXCommandColAddMedia         = Download request parameters (CMPXMedia type)                      |
-        Download request parameters CMPXMedia type) contains:                                          |
-            KVcxMediaMyVideosIapId     = IAP ID                                                        |
-            KVcxMediaMyVideosUsername  = User name                                                     |
-            KVcxMediaMyVideosPassword  = Password                                                      |
-            KMPXMediaGeneralFlags      = EVcxMyVideosServiceHasReadOnlyIap|EVcxMyVideosSilent          |
-            KVcxMediaMyVideosRemoteUrl = Remote URL                                                    |
-            KMPXMediaGeneralTitle      = Video title                                                   |
-                    |--------------------------------------------------------------------------------->|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |  HandleCommandComplete(downloadStartCommand, FAIL/SUCCESS)                       |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    |  HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                   |
-                    |                                                                                  |
-                    |  aMessage contains:                                                              |
-                    |      KMPXMessageGeneralId       = KMPXMessageIdItemChanged                       |
-                    |      KMPXMessageChangeEventType = EMPXItemInserted                               |
-                    |      KMPXMessageCollectionId    = KVcxUidMyVideosMpxCollection                   |
-                    |      KMPXMessageMediaGeneralId  = MPX ID                                         |
-                    |                                                                                  |
-                    |  The corresponding media object contains:                                        |
-                    |      KMPXMediaGeneralId         = MPX ID                                         |
-                    |      KMPXMediaGeneralUri        = Local file path                                |
-                    |      KVcxMediaMyVideosRemoteUrl = Remote URL                                     |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
-                    |                                                                                  |
-                    |  aMessage contains:                                                              |
-                    |      KMPXMessageGeneralId       = KMPXMessageIdItemChanged                       |
-                    |      KMPXMessageChangeEventType = EMPXItemModified                               |
-                    |      KMPXMessageCollectionId    = KVcxUidMyVideosMpxCollection                   |
-                    |     KMPXMessageMediaGeneralId   = MPX ID                                         |
-                    |                                                                                  |
-                    | The corresponding media object contains:                                         |
-                    |      KMPXMediaGeneralId             = MPX ID                                 |
-                    |      KVcxMediaMyVideosDownloadState = Download state                             |
-                    |      KVcxMediaMyVideosDownloadId    = Download ID                                |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-
-
-
-DOWNLOAD CANCEL MSC
--------------------
- 
-                 .------.                                                                 .-------------------------.
-                 |CLIENT|                                                                 |MPX My Videos Collection |
-                 '------'                                                                 '-------------------------'
-                    |                                                                                  |
-                    |                                                                                  |
-iCollectionUtility->Collection().CommandL( *cancelDownloadCommand )                                    |
-                                                                                                       |
-cancelDownloadCommand (CMPXCommand type) contains:                                                     |
-    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
-    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosCancelDownload                                 |
-    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection                                      |
-    KMPXCommandColAddMedia         = Cancel download request parameters (CMPXMedia type)               |
-        Cancel download request parameters (CMPXMedia type) contains:                                  |
-        KMPXMediaGeneralId          = MPX ID                                                           |
-        KVcxMediaMyVideosDownloadId = download ID                                                      |
-        KMPXMediaGeneralUri         = file path                                                        |                                        
-                    |--------------------------------------------------------------------------------->|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |   HandleCommandComplete(cancelDownloadCommand, TInt aError )                     |
-                    |      aError is != KErrNone if either dl object (in Download Manager), file or    |
-                    |      MPX object was left to system.                                              |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    |   HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                  |
-                    |                                                                                  |
-                    |   aMessage contains:                                                             |
-                    |       KMPXMessageGeneralId       = KMPXMessageIdItemChanged                      |
-                    |       KMPXMessageChangeEventType = EMPXItemDeleted                               |
-                    |       KMPXMessageCollectionId    = KVcxUidMyVideosMpxCollection                  |
-                    |       KMPXMessageMediaGeneralId  = MPX ID                                        |
-                    |                                                                                  |
-                    |       The corresponding media object is gone                                     |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-
-
 GET MEDIA FULL DETAILS BY MPX ID MSC
 ------------------------------------
 
@@ -761,7 +662,8 @@
 ------------------------
 
  This command loads requested MDS items to MPX My Videos collection cache and returns the requested
- items to the client ( subset of the cache ).
+ items to the client ( subset of the cache ). Notice that if this command is given while OpenL is
+ being processed, then OpenL is interrupted and started from scratch when this command finishes.
  
                  .------.                                                                 .-------------------------.
                  |CLIENT|                                                                 |MPX My Videos Collection |
@@ -795,83 +697,6 @@
                     |<---------------------------------------------------------------------------------|
                     |                                                                                  |                 
 
-DOWNLOAD PAUSE MSC
--------------------
- 
-                 .------.                                                                 .-------------------------.
-                 |CLIENT|                                                                 |MPX My Videos Collection |
-                 '------'                                                                 '-------------------------'
-                    |                                                                                  |
-                    |                                                                                  |
-iCollectionUtility->Collection().CommandL( *pauseDownloadCommand )                                     |
-                                                                                                       |
-cancelDownloadCommand (CMPXCommand type) contains:                                                     |
-    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
-    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosPauseDownload                                  |
-    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection                                      |
-    KVcxMediaMyVideosDownloadId    = download id                                                       |
-                    |--------------------------------------------------------------------------------->|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |   HandleCommandComplete(pauseDownloadCommand, FAIL/SUCCESS)                      |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    |   HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                  |
-                    |                                                                                  |
-                    |   aMessage contains:                                                             |
-                    |       KMPXMessageGeneralId       = KMPXMessageIdItemChanged                      |
-                    |       KMPXMessageChangeEventType = EMPXItemModified                              |
-                    |       KMPXMessageCollectionId    = KVcxUidMyVideosMpxCollection                  |
-                    |       KMPXMessageMediaGeneralId  = MPX ID                                        |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-
-DOWNLOAD RESUME MSC
--------------------
- 
-                 .------.                                                                 .-------------------------.
-                 |CLIENT|                                                                 |MPX My Videos Collection |
-                 '------'                                                                 '-------------------------'
-                    |                                                                                  |
-                    |                                                                                  |
-iCollectionUtility->Collection().CommandL( *downloadStartCommand )                                     |
-                                                                                                       |
-downloadStartCommand (CMPXCommand type) contains:                                                      |
-    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
-    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosStartDownload                                  |
-    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection                                      |
-    KMPXCommandColAddMedia         = Download request parameters (CMPXMedia type)                      |
-        Download request parameters (CMPXMedia type) contains:                                         |
-            KVcxMediaMyVideosIapId      = IAP ID                                                       |
-            KVcxMediaMyVideosUsername   = User name                                                    |
-            KVcxMediaMyVideosPassword   = Password                                                     |
-            KMPXMediaGeneralFlags       = EVcxMyVideosServiceHasReadOnlyIap|EVcxMyVideosSilent         |
-            KVcxMediaMyVideosDownloadId = Download ID                                                  |
-                    |--------------------------------------------------------------------------------->|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |  HandleCommandComplete(downloadStartCommand, FAIL/SUCCESS)                       |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
-                    |                                                                                  |
-                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
-                    |                                                                                  |
-                    |  aMessage contains:                                                              |
-                    |      KMPXMessageGeneralId       = KMPXMessageIdItemChanged                       |
-                    |      KMPXMessageChangeEventType = EMPXItemModified                               |
-                    |      KMPXMessageCollectionId    = KVcxUidMyVideosMpxCollection                   |
-                    |      KMPXMessageMediaGeneralId  = MPX ID                                         |
-                    |                                                                                  |
-                    | The corresponding media object contains:                                         |
-                    |      KMPXMediaGeneralId             = MPX ID                                     |
-                    |      KVcxMediaMyVideosDownloadState = Download state                             |
-                    |      KVcxMediaMyVideosDownloadId    = Download ID                                |
-                    |<---------------------------------------------------------------------------------|
-                    |                                                                                  |
-                    |                                                                                  |
 
 VIDEO ADD MSC
 -------------
@@ -1000,7 +825,10 @@
                     |          KVcxMediaMyVideosInt32Value = result (system wide error code)           |
                     |<---------------------------------------------------------------------------------|
                     |                                                                                  |
-                    |  HandleCommandComplete(videoMoveCommand, FAIL/SUCCESS)                           |
+                    |  HandleCommandComplete(videoMoveCommand, KErrNone)                               |
+                    |      videoDeleteCommand KVcxMediaMyVideosInt32Value contains KErrNone if everything went
+                    |      OK. If value is != KErrNone, then something went wrong and command might    |
+                    |      have ended prematurely                                                      |
                     |<---------------------------------------------------------------------------------|
                     
 
@@ -1052,7 +880,10 @@
                     |          KVcxMediaMyVideosInt32Value = result (system wide error code)           |
                     |<---------------------------------------------------------------------------------|
                     |                                                                                  |
-                    |  HandleCommandComplete(videoDeleteCommand, FAIL/SUCCESS)                         |
+                    |  HandleCommandComplete(videoDeleteCommand, KErrNone)                             |
+                    |      videoDeleteCommand KVcxMediaMyVideosInt32Value contains KErrNone if everything went
+                    |      OK. If value is != KErrNone, then something went wrong and command was ended|
+                    |      prematurely.                                                                |
                     |<---------------------------------------------------------------------------------|
                     
 
@@ -1060,6 +891,214 @@
 -----------------------
 
 
+
+ADD VIDEOS TO ALBUM MSC
+-----------------------
+Notice that adding items to album does not add videos from collection. Ie item added events
+will not arrive for this operation. Instead the modify event is sent for the album item which is
+affected.
+                 .------.                                                                 .-------------------------.
+                 |CLIENT|                                                                 |MPX My Videos Collection |
+                 '------'                                                                 '-------------------------'
+                    |                                                                                  |
+                    |                                                                                  |
+iCollectionUtility->Collection().CommandL( *cmd )                                                      |
+                                                                                                       |
+cmd (CMPXCommand type) contains:                                                                       |
+    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
+    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosAddToAlbum                                     |
+    KMPXCommandGeneralCollectionId = 0x20016B97                                                        |
+    KMPXCommandGeneralDoSync       = EFalse                                                            |
+    KVcxMediaMyVideosTransactionId = TR ID                                                             |
+    KVcxMediaMyVideosUint32Value   = Album MDS ID (album where to add)                                 |
+    KMPXMediaArrayContents         = Media array (CMPXMediaArray)                                      |
+        Media array contains array of CMPXMedia objects which contain:                                 |
+           KMPXMediaGeneralId = video MPX ID (video to add)                                            |           
+                    |--------------------------------------------------------------------------------->|
+                    |                                                                                  |
+                    |  HandleCommandComplete(cmd, KErrNone)                                            |
+                    |      cmd is the same as was given in .CommandL() call.                           |
+                    |      cmd contains in addition to parameters set earlier:                         |
+                    |         1. Media array has error codes set to each array item:                   |
+                    |            KVcxMediaMyVideosInt32Value = KErrNone if successful, KErrGeneral otherwise.
+                    |         2. cmd KVcxMediaMyVideosInt32Value contains KErrNone if everything went  |
+                    |            OK. If value is != KErrNone, then something went wrong and individual |
+                    |            error codes for array items might not contain values.                 |
+                    |<---------------------------------------------------------------------------------|
+                    |                                                                                  |
+                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
+                    |                                                                                  |
+                    |  aMessage contains:                                                              |
+                    |      KMPXMessageGeneralId        = KMPXMessageIdItemChanged                      |
+                    |      KMPXMessageChangeEventType  = EMPXItemModified                              |
+                    |      KVcxMediaMyVideosInt32Value = EVcxMyVideosVideoListOrderChanged             |
+                    |      KMPXMessageCollectionId     = KVcxUidMyVideosMpxCollection                  |
+                    |      KMPXMessageMediaGeneralId   = MPX ID (ID of the album which had videos added)
+                    |<---------------------------------------------------------------------------------|
+
+
+REMOVE VIDEOS FROM ALBUM MSC
+----------------------------
+
+Notice that removing items from album does not remove videos from collection. Ie item deleted events
+will not arrive for this operation. Instead the modify event is sent for the album item which is
+affected.
+                 .------.                                                                 .-------------------------.
+                 |CLIENT|                                                                 |MPX My Videos Collection |
+                 '------'                                                                 '-------------------------'
+                    |                                                                                  |
+                    |                                                                                  |
+iCollectionUtility->Collection().CommandL( *cmd )                                                      |
+                                                                                                       |
+cmd (CMPXCommand type) contains:                                                                       |
+    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
+    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosRemoveFromAlbum                                |
+    KMPXCommandGeneralCollectionId = 0x20016B97                                                        |
+    KMPXCommandGeneralDoSync       = EFalse                                                            |
+    KVcxMediaMyVideosTransactionId = TR ID                                                             |
+    KVcxMediaMyVideosUint32Value   = Album MDS ID (iId1 member of TMPXItemId, album where from to remove) 
+    KMPXMediaArrayContents         = Media array (CMPXMediaArray)                                      |
+        Media array contains array of CMPXMedia objects which contain:                                 |
+           KMPXMediaGeneralId = video MPX ID (video to remove)                                         |           
+                    |--------------------------------------------------------------------------------->|
+                    |                                                                                  |
+                    |  HandleCommandComplete(cmd, KErrNone)                                            |
+                    |      cmd is the same as was given in .CommandL() call.                           |
+                    |      cmd contains in addition to parameters set earlier:                         |
+                    |         1. Media array has error codes set to each array item:                   |
+                    |            KVcxMediaMyVideosInt32Value = KErrNone if successful, KErrGeneral otherwise.
+                    |         2. cmd KVcxMediaMyVideosInt32Value contains KErrNone if everything went  |
+                    |            OK. If value is != KErrNone, then something went wrong and individual |
+                    |            error codes for array items might not contain values.                 |
+                    |<---------------------------------------------------------------------------------|
+                    |                                                                                  |
+                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
+                    |                                                                                  |
+                    |  aMessage contains:                                                              |
+                    |      KMPXMessageGeneralId        = KMPXMessageIdItemChanged                      |
+                    |      KMPXMessageChangeEventType  = EMPXItemModified                              |
+                    |      KVcxMediaMyVideosInt32Value = EVcxMyVideosVideoListOrderChanged             |
+                    |      KMPXMessageCollectionId     = KVcxUidMyVideosMpxCollection                  |
+                    |      KMPXMessageMediaGeneralId   = MPX ID (ID of the album which had videos removed)
+                    |<---------------------------------------------------------------------------------|
+
+ADD ALBUM MSC
+-------------
+
+Asynchronous version:
+
+                 .------.                                                                 .-------------------------.
+                 |CLIENT|                                                                 |MPX My Videos Collection |
+                 '------'                                                                 '-------------------------'
+                    |                                                                                  |
+                    |                                                                                  |
+iCollectionUtility->Collection().CommandL( *cmd )                                                      |
+                                                                                                       |
+cmd (CMPXCommand type) contains:                                                                       |
+    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
+    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosAddAlbum                                       |
+    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection (0x20016B97)                         |
+    KMPXCommandGeneralDoSync       = EFalse                                                            |
+    KVcxMediaMyVideosTransactionId = TR ID                                                             |
+    KMPXMediaGeneralTitle          = Album title text                                                  |
+                    |--------------------------------------------------------------------------------->|
+                    |                                                                                  |
+                    |  HandleCommandComplete(cmd, KErrNone)                                            |
+                    |      cmd is the same as was given in .CommandL() call.                           |
+                    |      cmd contains in addition to parameters set earlier:                         |
+                    |         1. cmd KVcxMediaMyVideosInt32Value contains KErrNone if everything went  |
+                    |            OK. If value is != KErrNone, then something went wrong.               |
+                    |         2. KMPXMediaGeneralId contains the MPX ID of the new album.              |
+                    |<---------------------------------------------------------------------------------|
+                    |                                                                                  |
+                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
+                    |                                                                                  |
+                    |  aMessage contains:                                                              |
+                    |      KMPXMessageGeneralId        = KMPXMessageIdItemChanged                      |
+                    |      KMPXMessageChangeEventType  = EMPXItemInserted                              |
+                    |      KVcxMediaMyVideosInt32Value = EVcxMyVideosListNoInfo                        |
+                    |      KMPXMessageCollectionId     = KVcxUidMyVideosMpxCollection                  |
+                    |      KMPXMessageMediaGeneralId   = MPX ID (ID of the new album)                  |
+                    |      KMPXCommandColAddMedia      = MPX media of the new album (CMPXMedia)        |
+                    |<---------------------------------------------------------------------------------|
+
+Synchronous version:
+
+CommandL leaves if error occurs.
+
+                 .------.                                                                 .-------------------------.
+                 |CLIENT|                                                                 |MPX My Videos Collection |
+                 '------'                                                                 '-------------------------'
+                    |                                                                                  |
+                    |                                                                                  |
+iCollectionUtility->Collection().CommandL( *cmd )                                                      |
+                                                                                                       |
+cmd (CMPXCommand type) contains:                                                                       |
+    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
+    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosAddAlbum                                       |
+    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection (0x20016B97)                         |
+    KMPXCommandGeneralDoSync       = ETrue                                                             |
+    KVcxMediaMyVideosTransactionId = TR ID                                                             |
+    KMPXMediaGeneralTitle          = Album title text                                                  |
+                                                                                                       |
+    After the call KMPXMediaGeneralId attribute contains the MPX ID of the new album.                  |
+                    |--------------------------------------------------------------------------------->.
+                    |<---------------------------------------------------------------------------------'
+                    |                                                                                  |
+                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
+                    |                                                                                  |
+                    |  aMessage contains:                                                              |
+                    |      KMPXMessageGeneralId        = KMPXMessageIdItemChanged                      |
+                    |      KMPXMessageChangeEventType  = EMPXItemInserted                              |
+                    |      KVcxMediaMyVideosInt32Value = EVcxMyVideosListNoInfo                        |
+                    |      KMPXMessageCollectionId     = KVcxUidMyVideosMpxCollection                  |
+                    |      KMPXMessageMediaGeneralId   = MPX ID (ID of the new album)                  |
+                    |      KMPXCommandColAddMedia      = MPX media of the new album (CMPXMedia)        |
+                    |<---------------------------------------------------------------------------------|
+
+
+
+REMOVE ALBUMS MSC
+-----------------
+
+                 .------.                                                                 .-------------------------.
+                 |CLIENT|                                                                 |MPX My Videos Collection |
+                 '------'                                                                 '-------------------------'
+                    |                                                                                  |
+                    |                                                                                  |
+iCollectionUtility->Collection().CommandL( *cmd )                                                      |
+                                                                                                       |
+cmd (CMPXCommand type) contains:                                                                       |
+    KMPXCommandGeneralId           = KVcxCommandIdMyVideos                                             |
+    KVcxMediaMyVideosCommandId     = KVcxCommandMyVideosRemoveAlbums                                   |
+    KMPXCommandGeneralCollectionId = KVcxUidMyVideosMpxCollection (0x20016B97)                         |
+    KMPXCommandGeneralDoSync       = EFalse (only async supported)                                     |
+    KVcxMediaMyVideosTransactionId = TR ID                                                             |
+    KMPXMediaArrayContents         = Media array (CMPXMediaArray)                                      |
+        Media array contains array of CMPXMedia objects which contain:                                 |
+           KMPXMediaGeneralId = album MPX ID (album to remove)                                         |           
+                    |--------------------------------------------------------------------------------->|
+                    |                                                                                  |
+                    |  HandleCommandComplete(cmd, KErrNone)                                            |
+                    |      cmd is the same as was given in .CommandL() call.                           |
+                    |      cmd contains in addition to parameters set earlier:                         |
+                    |         1. Media array has error codes set to each array item:                   |
+                    |            KVcxMediaMyVideosInt32Value = KErrNone if successful, KErrGeneral otherwise.
+                    |         2. cmd KVcxMediaMyVideosInt32Value contains KErrNone if everything went  |
+                    |            OK. If value is != KErrNone, then something went wrong and individual |
+                    |            error codes for array items might not contain values.                 |
+                    |<---------------------------------------------------------------------------------|
+                    |                                                                                  |
+                    | HandleCollectionMessage( CMPXMessage* aMessage, TInt aError )                    |
+                    |                                                                                  |
+                    |  aMessage contains:                                                              |
+                    |      KMPXMessageGeneralId        = KMPXMessageIdItemChanged                      |
+                    |      KMPXMessageChangeEventType  = EMPXItemDeleted                               |
+                    |      KVcxMediaMyVideosInt32Value = EVcxMyVideosListNoInfo                        |
+                    |      KMPXMessageCollectionId     = KVcxUidMyVideosMpxCollection                  |
+                    |      KMPXMessageMediaGeneralId   = MPX ID (ID of the album which was removed)    |
+                    |<---------------------------------------------------------------------------------|
+
 */
 
 #endif // VCXMYVIDEOSDEFS_H