baseport/syborg/webcamera/webcamera_driver.h
author Shimizu Satoshi <s_shimizu@isb.co.jp>
Mon, 18 Oct 2010 19:39:25 +0900
changeset 124 606eafc6d6a8
parent 52 0dfaca43d90e
permissions -rw-r--r--
Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     1
/*
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     2
* Copyright (c) 2010 ISB.
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     3
* All rights reserved.
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     8
*
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
     9
* Initial Contributors:
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    10
* ISB - initial contribution.
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    11
*
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    12
* Contributors:
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    13
*
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    14
* Description: USB driver for test
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    15
*
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    16
*/
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    17
#ifndef __deviceIF_H__
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    18
#define __deviceIF_H__
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    19
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    20
#include <e32cmn.h>
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    21
#ifndef __KERNEL_MODE__
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    22
#include <e32std.h>
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    23
#endif
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    24
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    25
#define BUFSIZE  (600*1024)
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    26
#define BITMAPBUFSIZE  (900 * 1024)
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    27
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    28
/**
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    29
User interface for 'WebcameraDevice'
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    30
Define of the RBusLogicalChannel that is used in the application
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    31
*/
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    32
class RWebcameraDevice : public RBusLogicalChannel
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    33
	{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    34
public:
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    35
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    36
	Structure for holding driver capabilities information
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    37
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    38
	class TCaps
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    39
		{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    40
	public:
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    41
		TVersion iVersion;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    42
		};
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    43
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    44
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    45
	Structure for holding driver configuration data
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    46
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    47
	class TConfig
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    48
		{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    49
	public:
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    50
		TInt iPddBufferSize;        /**< Size of the PDD's data buffer (not modifiable) */
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    51
		//RArray<TSize> iImageSizes /**< size the PDD support*/ //TODO:implement
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    52
		};
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    53
	typedef TPckgBuf<TConfig> TConfigBuf;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    54
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    55
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    56
	Structure for holding driver chuck information
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    57
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    58
	class TChunkInfo
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    59
		{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    60
	public:
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    61
		TInt iChunkHandle;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    62
		TInt iChunkMaxSize;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    63
		TInt iChunkRemSize;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    64
		};
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
    65
public:
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    66
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    67
	Opens a logical channel to the driver
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    68
	@return One of the system wide error codes.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    69
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    70
	inline TInt Open();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    71
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    72
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    73
	Gets the current configuration settings.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    74
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    75
	@param aConfig A structure which will be filled with the configuration settings.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    76
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    77
	@return KErrNone
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    78
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    79
	inline TInt GetConfig(TConfigBuf& aConfig);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    80
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    81
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    82
	Sets the current configuration settings.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    83
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    84
	@param aConfig The new configuration settings to be used.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    85
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    86
	@return KErrInUse if there are outstanding data transfer requests.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    87
			KErrArgument if any configuration values are invalid.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    88
			KErrNone otherwise
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    89
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    90
	inline TInt SetConfig(const TConfigBuf& aConfig);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    91
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    92
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    93
	Power on Camera Device.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    94
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    95
	inline void PowerOn(TRequestStatus& aStatus);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    96
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    97
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    98
	Power off Camera Device.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
    99
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   100
	inline void PowerOff(TRequestStatus& aStatus);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   101
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   102
	/** 
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   103
	Init ViewFinder.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   104
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   105
	inline TInt InitViewFinder();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   106
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   107
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   108
	Request data from device.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   109
	Only one send request may be pending at any time.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   110
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   111
	@param aStatus	The request to be signalled when the data has been sent.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   112
					The result value will be set to KErrNone on success;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   113
					or set to one of the system wide error codes when an error occurs.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   114
	@param aData	A descriptor containing the data to send.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   115
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   116
	inline void StartViewFinder(TRequestStatus& aStatus,TInt& aChunkLen);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   117
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   118
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   119
	Cancels a previous getdata request.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   120
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   121
	inline void StartViewFinderCancel();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   122
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   123
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   124
	Cancels a previous getdata request and notice device not to send data
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   125
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   126
	inline void StopViewFinder();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   127
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   128
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   129
	Request data(Capture data) from device.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   130
	Only one send request may be pending at any time.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   131
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   132
	@param aStatus	The request to be signalled when the data has been sent.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   133
					The result value will be set to KErrNone on success;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   134
					or set to one of the system wide error codes when an error occurs.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   135
	@param aData	A descriptor containing the data to send.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   136
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   137
	inline void Capture(TRequestStatus& aStatus,TInt& aChunkLen);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   138
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   139
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   140
	Cancels a previous getCapturedata request.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   141
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   142
	inline void CaptureCancel();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   143
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   144
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   145
	Returns the driver's name
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   146
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   147
	inline static const TDesC& Name();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   148
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   149
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   150
	Returns the version number of the driver
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   151
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   152
	inline static TVersion VersionRequired();
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   153
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   154
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   155
	Opens a shared chunk on kernel side and makes a handle to the kernel chunk object
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   156
	@param aChunk		The object to which the handle will refer
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   157
	@param aChunkInfo	information of the created chunk.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   158
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   159
#ifndef __KERNEL_MODE__
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   160
	inline TInt OpenSharedChunks(RChunk& aChunk,TChunkInfo& aChunkInfo);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   161
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   162
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   163
	Closes ashared chunk
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   164
	@param aChunk 	The object to which the handle will refer
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   165
	@param aStatus	The request to be signalled when the data has been sent.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   166
					The result value will be set to KErrNone on success;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   167
					or set to one of the system wide error codes when an error occurs.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   168
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   169
	inline TInt CloseSharedChunks(TRequestStatus& aStatus,RChunk& aChunk);
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   170
#endif
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   171
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   172
public:
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   173
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   174
	Enumeration of Control messages.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   175
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   176
	enum TControl
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   177
		{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   178
		EGetConfig,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   179
		ESetConfig,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   180
		EInitViewFinder,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   181
		EOpenSharedChunck
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   182
		};
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   183
	/**
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   184
	Enumeration of Request messages.
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   185
	*/
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   186
	enum TRequest
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   187
		{
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   188
		EPowerOff,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   189
		EPowerOn,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   190
		EStart,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   191
		ETransferData,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   192
		ECapture,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   193
		ECloseSharedChunck,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   194
		ENumRequests,
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   195
		EAllRequests = (1<<ENumRequests)-1
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   196
		};
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   197
124
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   198
	// Kernel side LDD channel is a friend
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   199
	friend class DWebcameraLogicalChannel;
606eafc6d6a8 Obtain an image of Webcamera from QEMU and add the Bitmap change display function.
Shimizu Satoshi <s_shimizu@isb.co.jp>
parents: 52
diff changeset
   200
	};
52
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   201
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   202
// Inline functions
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   203
#include <webcamera_driver.inl>
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   204
0dfaca43d90e Added web camera drivers and QEMU plug-in for obtaining and transferring dummy data.
Masaki Hosaka <hosaka@isb.co.jp>
parents:
diff changeset
   205
#endif