Main Page   Class Hierarchy   Data Structures   File List   Data Fields   Globals  

pv_engine_types.h

Go to the documentation of this file.
00001 #ifndef PV_ENGINE_TYPES_H_INCLUDED
00002 #define PV_ENGINE_TYPES_H_INCLUDED
00003 
00004 #ifndef OSCL_BASE_H_INCLUDED
00005 #include "oscl_base.h"
00006 #endif
00007 #ifndef OSCL_STRING_H_INCLUDED
00008 #include "oscl_string.h"
00009 #endif
00010 #ifndef OSCL_STRING_CONTAINERS_H_INCLUDED
00011 #include "oscl_string_containers.h"
00012 #endif
00013 #ifndef OSCL_MEM_H_INCLUDED
00014 #include "oscl_mem.h"
00015 #endif
00016 #ifndef PVMF_FORMAT_TYPE_H_INCLUDED
00017 #include "pvmf_format_type.h"
00018 #endif
00019 #ifndef PV_UUID_H_INCLUDED
00020 #include "pv_uuid.h"
00021 #endif
00022 #ifndef PV_INTERFACE_H_INCLUDED
00023 #include "pv_interface.h"
00024 #endif
00025 #ifndef OSCL_VECTOR_H_INCLUDED
00026 #include "oscl_vector.h"
00027 #endif
00028 
00029 // DATA TYPES
00030 typedef int32 PVCommandId;
00031 typedef int32 PVEventType;
00032 typedef OsclAny* PVExclusivePtr;
00033 typedef int32 PVResponseType;
00034 typedef int32 PVLogLevelInfo;
00035 typedef Oscl_Vector<OSCL_HeapString<OsclMemAllocator>, OsclMemAllocator> PVPMetadataList;
00036 /* Temporary definitions */
00037 typedef int32 PVSDKModuleInfo;
00038 /* END of temp defs */
00039 
00040 struct PVSDKInfo
00041 {
00042     PVSDKInfo()
00043     {
00044         iDate = 0x00000000;
00045     }
00046 
00047     PVSDKInfo& operator=(const PVSDKInfo& aSDKInfo)
00048     {
00049         iLabel = aSDKInfo.iLabel;
00050         iDate = aSDKInfo.iDate;
00051         return *this;
00052     }
00053 
00054     OSCL_StackString<80> iLabel;
00055     uint32 iDate; // 0xyyyymmdd
00056 };
00057 
00058 
00065 class PVEngineCommand
00066 {
00067     public:
00077         PVEngineCommand(int32 aCmdType, PVCommandId aCmdId, OsclAny* aContextData = NULL, OsclAny* aParam1 = NULL, OsclAny* aParam2 = NULL, OsclAny* aParam3 = NULL) :
00078                 iCmdType(aCmdType), iCmdId(aCmdId), iContextData(aContextData), iParam1(aParam1), iParam2(aParam2), iParam3(aParam3) {}
00079 
00087         PVEngineCommand(const PVEngineCommand& aCmd)
00088         {
00089             iCmdType = aCmd.iCmdType;
00090             iCmdId = aCmd.iCmdId;
00091             iContextData = aCmd.iContextData;
00092             iParam1 = aCmd.iParam1;
00093             iParam2 = aCmd.iParam2;
00094             iParam3 = aCmd.iParam3;
00095             iMimeType = aCmd.iMimeType;
00096             iUuid = aCmd.iUuid;
00097         }
00098 
00104         int32 GetCmdType()const
00105         {
00106             return iCmdType;
00107         }
00108 
00114         PVCommandId GetCmdId()const
00115         {
00116             return iCmdId;
00117         }
00118 
00124         OsclAny* GetContext()const
00125         {
00126             return iContextData;
00127         }
00128 
00134         OsclAny* GetParam1()const
00135         {
00136             return iParam1;
00137         }
00138 
00144         OsclAny* GetParam2()const
00145         {
00146             return iParam2;
00147         }
00148 
00154         OsclAny* GetParam3()const
00155         {
00156             return iParam3;
00157         }
00158 
00164         const PvmfMimeString& GetMimeType()const
00165         {
00166             return iMimeType;
00167         }
00168 
00174         PVUuid GetUuid()const
00175         {
00176             return iUuid;
00177         }
00178 
00182         void SetMimeType(const PvmfMimeString& aMimeType)
00183         {
00184             iMimeType = aMimeType;
00185         }
00186 
00190         void SetUuid(const PVUuid& aUuid)
00191         {
00192             iUuid = aUuid;
00193         }
00194 
00195         int32 iCmdType;
00196         PVCommandId iCmdId;
00197         OsclAny* iContextData;
00198         OsclAny* iParam1;
00199         OsclAny* iParam2;
00200         OsclAny* iParam3;
00201         OSCL_HeapString<OsclMemAllocator> iMimeType;
00202         PVUuid iUuid;
00203 };
00204 
00205 
00212 class PVEngineAsyncEvent
00213 {
00214     public:
00224         PVEngineAsyncEvent(int32 aAsyncEventType) :
00225                 iAsyncEventType(aAsyncEventType) {}
00226 
00234         PVEngineAsyncEvent(const PVEngineAsyncEvent& aAsyncEvent)
00235         {
00236             iAsyncEventType = aAsyncEvent.iAsyncEventType;
00237         }
00238 
00244         int32 GetAsyncEventType()const
00245         {
00246             return iAsyncEventType;
00247         }
00248 
00249         int32 iAsyncEventType;
00250 };
00251 
00252 #endif
00253 

PV Author Engine
Posting Version: CORE_8.000.1.1_RC4