os/mm/mmlibs/mmfw/inc/Mda/Common/Video.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
// Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0
     2
// All rights reserved.
sl@0
     3
// This component and the accompanying materials are made available
sl@0
     4
// under the terms of "Eclipse Public License v1.0"
sl@0
     5
// which accompanies this distribution, and is available
sl@0
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     7
//
sl@0
     8
// Initial Contributors:
sl@0
     9
// Nokia Corporation - initial contribution.
sl@0
    10
//
sl@0
    11
// Contributors:
sl@0
    12
//
sl@0
    13
// Description:
sl@0
    14
// Mda\Common\Video.h
sl@0
    15
// This version forms part of the backwards compatible ImageConversion routines
sl@0
    16
// 
sl@0
    17
//
sl@0
    18
sl@0
    19
#ifndef __MDA_COMMON_VIDEO_H__
sl@0
    20
#define __MDA_COMMON_VIDEO_H__
sl@0
    21
sl@0
    22
#include <gdi.h>
sl@0
    23
#include <mda/common/resource.h>
sl@0
    24
#include <mda/common/video.hrh>
sl@0
    25
sl@0
    26
// Video data type Uid
sl@0
    27
sl@0
    28
MDA_UID(KUidMdaMediaTypeVideo)
sl@0
    29
MDA_UID(KUidMdaVideoFrameSettings)
sl@0
    30
MDA_UID(KUidMdaVideoCurrentFrame)
sl@0
    31
MDA_UID(KUidMdaDstPortSourceRect)
sl@0
    32
MDA_UID(KUidMdaMbmClipFormat)
sl@0
    33
MDA_UID(KUidMdaMbmCodec)
sl@0
    34
MDA_UID(KUidMdaBmpClipFormat)
sl@0
    35
MDA_UID(KUidMdaBmpCodec)
sl@0
    36
MDA_UID(KUidMda1BppBmpCodec)
sl@0
    37
MDA_UID(KUidMda4BppBmpCodec)
sl@0
    38
MDA_UID(KUidMda8BppBmpCodec)
sl@0
    39
MDA_UID(KUidMda24BppBmpCodec)
sl@0
    40
MDA_UID(KUidMdaFbsBitmapDevice)
sl@0
    41
MDA_UID(KUidMdaFbsBitmapHandle)
sl@0
    42
MDA_UID(KUidMdaFbsBitmapMaskHandle)
sl@0
    43
MDA_UID(KUidMdaJfifClipFormat)
sl@0
    44
MDA_UID(KUidMdaJpgCodec)
sl@0
    45
MDA_UID(KUidMdaJpgQTable)
sl@0
    46
MDA_UID(KUidMdaJpgComment)
sl@0
    47
MDA_UID(KUidMdaWbmpClipFormat)
sl@0
    48
MDA_UID(KUidMdaWbmpCodec)
sl@0
    49
MDA_UID(KUidMdaOtaClipFormat)
sl@0
    50
MDA_UID(KUidMdaOtaCodec)
sl@0
    51
MDA_UID(KUidMdaPngClipFormat)
sl@0
    52
MDA_UID(KUidMdaPngCodec)
sl@0
    53
MDA_UID(KUidMdaWmfClipFormat)
sl@0
    54
MDA_UID(KUidMdaWmfApmClipFormat)
sl@0
    55
MDA_UID(KUidMdaWmfClpClipFormat)
sl@0
    56
MDA_UID(KUidMdaWmfCodec)
sl@0
    57
MDA_UID(KUidMdaTiffLittleEndianClipFormat)
sl@0
    58
MDA_UID(KUidMdaTiffBigEndianClipFormat)
sl@0
    59
MDA_UID(KUidMdaTiffCodec)
sl@0
    60
MDA_UID(KUidMdaIcoClipFormat)
sl@0
    61
MDA_UID(KUidMdaIcoCodec)
sl@0
    62
MDA_UID(KUidMdaGif87aClipFormat)
sl@0
    63
MDA_UID(KUidMdaGif89aClipFormat)
sl@0
    64
MDA_UID(KUidMdaGifCodec)
sl@0
    65
sl@0
    66
sl@0
    67
/**
sl@0
    68
@publishedAll
sl@0
    69
@released
sl@0
    70
sl@0
    71
Video buffer settings. May be combined.
sl@0
    72
*/
sl@0
    73
enum TMdaVideoBufferSettings
sl@0
    74
	{
sl@0
    75
	/** Can only handle buffers whilst playing
sl@0
    76
	*/
sl@0
    77
	EMdaVideoBufferAtPlay =		0x0000000,
sl@0
    78
	/** Can handle buffers when primed
sl@0
    79
	*/
sl@0
    80
	EMdaVideoBufferAtPrime =	0x0000001,
sl@0
    81
	/** Must have two buffers for uninterrupted play
sl@0
    82
	*/
sl@0
    83
	EMdaVideoBufferDouble =		0x0000002,
sl@0
    84
	/** Will supply buffers for efficiency
sl@0
    85
	*/
sl@0
    86
	EMdaVideoBufferSupply =		0x0000004
sl@0
    87
	};
sl@0
    88
sl@0
    89
sl@0
    90
/**
sl@0
    91
 * @publishedAll
sl@0
    92
 * @deprecated
sl@0
    93
 *
sl@0
    94
 * Bmp Clip Format
sl@0
    95
 */
sl@0
    96
class TMdaBmpClipFormat : public TMdaClipFormat
sl@0
    97
	{
sl@0
    98
public:
sl@0
    99
	inline TMdaBmpClipFormat();
sl@0
   100
	};
sl@0
   101
sl@0
   102
sl@0
   103
/**
sl@0
   104
 * @publishedAll
sl@0
   105
 * @deprecated
sl@0
   106
 *
sl@0
   107
 * 1 Bpp Bmp Codec
sl@0
   108
 */
sl@0
   109
class TMda1BppBmpCodec : public TMdaPackage
sl@0
   110
	{
sl@0
   111
public:
sl@0
   112
	inline TMda1BppBmpCodec();
sl@0
   113
	};
sl@0
   114
sl@0
   115
sl@0
   116
/**
sl@0
   117
 * @publishedAll
sl@0
   118
 * @deprecated
sl@0
   119
 *
sl@0
   120
 * 4 Bpp Bmp Codec
sl@0
   121
 */
sl@0
   122
class TMda4BppBmpCodec : public TMdaPackage
sl@0
   123
	{
sl@0
   124
public:
sl@0
   125
	inline TMda4BppBmpCodec();
sl@0
   126
	};
sl@0
   127
sl@0
   128
sl@0
   129
/**
sl@0
   130
 * @publishedAll
sl@0
   131
 * @deprecated
sl@0
   132
 *
sl@0
   133
 * 8 Bpp Bmp Codec
sl@0
   134
 */
sl@0
   135
class TMda8BppBmpCodec : public TMdaPackage
sl@0
   136
	{
sl@0
   137
public:
sl@0
   138
	inline TMda8BppBmpCodec();
sl@0
   139
	};
sl@0
   140
sl@0
   141
sl@0
   142
/**
sl@0
   143
 * @publishedAll
sl@0
   144
 * @deprecated
sl@0
   145
 *
sl@0
   146
 * 24 Bpp Bmp Codec
sl@0
   147
 */
sl@0
   148
class TMda24BppBmpCodec : public TMdaPackage
sl@0
   149
	{
sl@0
   150
public:
sl@0
   151
	inline TMda24BppBmpCodec();
sl@0
   152
	};
sl@0
   153
sl@0
   154
sl@0
   155
/**
sl@0
   156
 * @publishedAll 
sl@0
   157
 * @deprecated
sl@0
   158
 *
sl@0
   159
 * Jpeg settings
sl@0
   160
 */
sl@0
   161
class TMdaJpgSettings
sl@0
   162
	{
sl@0
   163
public:
sl@0
   164
	inline TMdaJpgSettings(); // Defaults to EColor420 and 50
sl@0
   165
public:
sl@0
   166
	enum TColorSampling
sl@0
   167
		{
sl@0
   168
		EMonochrome,
sl@0
   169
		EColor420,
sl@0
   170
		EColor422,
sl@0
   171
		EColor444
sl@0
   172
		};
sl@0
   173
public:
sl@0
   174
	TColorSampling iSampleScheme;
sl@0
   175
	TInt iQualityFactor; // 0 to 100 inclusive
sl@0
   176
	};
sl@0
   177
sl@0
   178
sl@0
   179
/**
sl@0
   180
 * @publishedAll 
sl@0
   181
 * @deprecated
sl@0
   182
 *
sl@0
   183
 * Jfif Clip Format
sl@0
   184
 */
sl@0
   185
class TMdaJfifClipFormat : public TMdaClipFormat
sl@0
   186
	{
sl@0
   187
public:
sl@0
   188
	inline TMdaJfifClipFormat();
sl@0
   189
public:
sl@0
   190
	TMdaJpgSettings iSettings;
sl@0
   191
	};
sl@0
   192
sl@0
   193
sl@0
   194
/** @publishedAll */
sl@0
   195
const TInt KMdaJpgQTableEntries = 64;
sl@0
   196
sl@0
   197
class TMdaJpgQTable : public TMdaPackage
sl@0
   198
/**
sl@0
   199
 * @publishedAll
sl@0
   200
 * @deprecated
sl@0
   201
 *
sl@0
   202
 * Jpeg Quantization table - in direct format
sl@0
   203
 */
sl@0
   204
	{
sl@0
   205
public:
sl@0
   206
	inline TMdaJpgQTable();
sl@0
   207
public:
sl@0
   208
	enum TQTableIndex { ELumaTable = 0, EChromaTable = 1 };
sl@0
   209
public:
sl@0
   210
	TInt iTableIndex;
sl@0
   211
	TBuf8<KMdaJpgQTableEntries> iEntries;
sl@0
   212
	};
sl@0
   213
sl@0
   214
sl@0
   215
/** @deprecated */
sl@0
   216
const TInt KJpgCommentBufferSize = 256;
sl@0
   217
/**
sl@0
   218
 * @publishedAll  
sl@0
   219
 * @deprecated
sl@0
   220
 *
sl@0
   221
 * Jpeg comment
sl@0
   222
 */
sl@0
   223
class TMdaJpgComment : public TMdaPackage
sl@0
   224
	{
sl@0
   225
public:
sl@0
   226
	inline TMdaJpgComment();
sl@0
   227
public:
sl@0
   228
	TInt iCommentIndex; // Comment block to set/query
sl@0
   229
	TInt iCommentBufferIndex; // Index of KJpgCommentBufferSize block within comment to set/query
sl@0
   230
	TInt iTotalCommentLength; // Total size of comment being queried
sl@0
   231
	TBuf8<KJpgCommentBufferSize> iComment; // Comment to set/query
sl@0
   232
	};
sl@0
   233
sl@0
   234
sl@0
   235
/**
sl@0
   236
 * @publishedAll 
sl@0
   237
 * @deprecated
sl@0
   238
 *
sl@0
   239
 * Mbm Clip Format
sl@0
   240
 */
sl@0
   241
class TMdaMbmClipFormat : public TMdaClipFormat
sl@0
   242
	{
sl@0
   243
public:
sl@0
   244
	inline TMdaMbmClipFormat();
sl@0
   245
public:
sl@0
   246
	TDisplayMode iDisplayMode;
sl@0
   247
	};
sl@0
   248
sl@0
   249
sl@0
   250
/**
sl@0
   251
 * @publishedAll 
sl@0
   252
 * @deprecated
sl@0
   253
 *
sl@0
   254
 * Wbmp Clip Format
sl@0
   255
 */
sl@0
   256
class TMdaWbmpClipFormat : public TMdaClipFormat
sl@0
   257
	{
sl@0
   258
public:
sl@0
   259
	inline TMdaWbmpClipFormat();
sl@0
   260
	};
sl@0
   261
sl@0
   262
sl@0
   263
/**
sl@0
   264
 * @publishedAll 
sl@0
   265
 * @deprecated
sl@0
   266
 *
sl@0
   267
 * Wbmp Codec
sl@0
   268
 */
sl@0
   269
class TMdaWbmpCodec : public TMdaPackage
sl@0
   270
	{
sl@0
   271
public:
sl@0
   272
	inline TMdaWbmpCodec();
sl@0
   273
	};
sl@0
   274
sl@0
   275
sl@0
   276
/**
sl@0
   277
 * @publishedAll 
sl@0
   278
 * @deprecated
sl@0
   279
 *
sl@0
   280
 * Ota Clip Format
sl@0
   281
 */
sl@0
   282
class TMdaOtaClipFormat : public TMdaClipFormat
sl@0
   283
	{
sl@0
   284
public:
sl@0
   285
	inline TMdaOtaClipFormat();
sl@0
   286
	};
sl@0
   287
sl@0
   288
sl@0
   289
/**
sl@0
   290
 * @publishedAll 
sl@0
   291
 * @deprecated
sl@0
   292
 *
sl@0
   293
 * Ota Codec
sl@0
   294
 */
sl@0
   295
class TMdaOtaCodec : public TMdaPackage
sl@0
   296
	{
sl@0
   297
public:
sl@0
   298
	inline TMdaOtaCodec();
sl@0
   299
	};
sl@0
   300
sl@0
   301
sl@0
   302
/**
sl@0
   303
 * @publishedAll 
sl@0
   304
 * @deprecated
sl@0
   305
 *
sl@0
   306
 * Png Clip Format
sl@0
   307
 */
sl@0
   308
class TMdaPngClipFormat : public TMdaClipFormat
sl@0
   309
	{
sl@0
   310
public:
sl@0
   311
	inline TMdaPngClipFormat();
sl@0
   312
	};
sl@0
   313
sl@0
   314
sl@0
   315
/**
sl@0
   316
 * @publishedAll 
sl@0
   317
 * @deprecated
sl@0
   318
 *
sl@0
   319
 * Png Codec
sl@0
   320
 */
sl@0
   321
class TMdaPngCodec : public TMdaPackage
sl@0
   322
	{
sl@0
   323
public:
sl@0
   324
	inline TMdaPngCodec();
sl@0
   325
	};
sl@0
   326
sl@0
   327
sl@0
   328
/**
sl@0
   329
 * @publishedAll 
sl@0
   330
 * @deprecated
sl@0
   331
 *
sl@0
   332
 * Wmf Clip Format
sl@0
   333
 */
sl@0
   334
class TMdaWmfClipFormat : public TMdaClipFormat
sl@0
   335
	{
sl@0
   336
public:
sl@0
   337
	inline TMdaWmfClipFormat();
sl@0
   338
	};
sl@0
   339
sl@0
   340
sl@0
   341
/**
sl@0
   342
 * @publishedAll 
sl@0
   343
 * @deprecated
sl@0
   344
 *
sl@0
   345
 * Wmf Apm Clip Format
sl@0
   346
 */
sl@0
   347
class TMdaWmfApmClipFormat : public TMdaClipFormat
sl@0
   348
	{
sl@0
   349
public:
sl@0
   350
	inline TMdaWmfApmClipFormat();
sl@0
   351
	};
sl@0
   352
sl@0
   353
sl@0
   354
/**
sl@0
   355
 * @publishedAll 
sl@0
   356
 * @deprecated
sl@0
   357
 *
sl@0
   358
 * Wmf Clp Clip Format
sl@0
   359
 */
sl@0
   360
class TMdaWmfClpClipFormat : public TMdaClipFormat
sl@0
   361
	{
sl@0
   362
public:
sl@0
   363
	inline TMdaWmfClpClipFormat();
sl@0
   364
	};
sl@0
   365
sl@0
   366
sl@0
   367
/**
sl@0
   368
 * @publishedAll 
sl@0
   369
 * @deprecated
sl@0
   370
 *
sl@0
   371
 * Wmf Codec
sl@0
   372
 */
sl@0
   373
class TMdaWmfCodec : public TMdaPackage
sl@0
   374
	{
sl@0
   375
public:
sl@0
   376
	inline TMdaWmfCodec();
sl@0
   377
	};
sl@0
   378
sl@0
   379
sl@0
   380
/**
sl@0
   381
 * @publishedAll 
sl@0
   382
 * @deprecated
sl@0
   383
 *
sl@0
   384
 * Gif87a Clip Format
sl@0
   385
 */
sl@0
   386
class TMdaGif87aClipFormat : public TMdaClipFormat
sl@0
   387
	{
sl@0
   388
public:
sl@0
   389
	inline TMdaGif87aClipFormat();
sl@0
   390
	};
sl@0
   391
sl@0
   392
sl@0
   393
/**
sl@0
   394
 * @publishedAll 
sl@0
   395
 * @deprecated
sl@0
   396
 *
sl@0
   397
 * Gif89a Clip Format (Animated)
sl@0
   398
 */
sl@0
   399
class TMdaGif89aClipFormat : public TMdaClipFormat
sl@0
   400
	{
sl@0
   401
public:
sl@0
   402
	inline TMdaGif89aClipFormat();
sl@0
   403
	};
sl@0
   404
sl@0
   405
sl@0
   406
/**
sl@0
   407
 * @publishedAll 
sl@0
   408
 * @deprecated
sl@0
   409
 *
sl@0
   410
 * Gif Codec
sl@0
   411
 */
sl@0
   412
class TMdaGifCodec : public TMdaPackage
sl@0
   413
	{
sl@0
   414
public:
sl@0
   415
	inline TMdaGifCodec();
sl@0
   416
	};
sl@0
   417
sl@0
   418
#include <mda/common/video.inl>
sl@0
   419
sl@0
   420
#endif
sl@0
   421