CMMFFile Class Reference
|
class CMMFFile : public CMMFClip
|
MultiMedia framework class. Represents a physical file.
This may be source file from which data is read or destination to which data is written.
Intended to be used by controller plugin developers for source and sink plugins.
Nested Classes and Structures
|
Public Member Functions
|
|
|
~CMMFFile
()
|
|
void
|
BufferEmptiedL
(
CMMFBuffer
*)
|
|
void
|
BufferFilledL
(
CMMFBuffer
*)
|
|
TInt64
|
BytesFree
()
|
|
TBool
|
CanCreateSinkBuffer
()
|
|
TBool
|
CanCreateSourceBuffer
()
|
|
TBool
|
CanUseTransferBuffer
()
|
|
CMMFBuffer
*
|
CreateSinkBufferL
(
TMediaId
,
TBool
&)
|
|
CMMFBuffer
*
|
CreateSourceBufferL
(
TMediaId
,
TBool
&)
|
|
TInt
|
Data
(
ContentAccess::CData
*&)
|
|
TInt
|
Delete
()
|
|
void
|
EmptyBufferL
(
CMMFBuffer
*,
MDataSource
*,
TMediaId
)
|
|
TInt
|
EvaluateIntent
(
ContentAccess::TIntent
)
|
|
TInt
|
ExecuteIntent
(
ContentAccess::TIntent
)
|
|
const
TDesC
&
|
Extension
()
|
|
const
TDesC
&
|
FileDrive
()
|
|
RFile
&
|
FileL
()
|
|
const
TDesC
&
|
FileName
()
|
|
const
TDesC
&
|
FilePath
()
|
|
void
|
FillBufferL
(
CMMFBuffer
*,
MDataSink
*,
TMediaId
)
|
|
const
TFileName
|
FullName
()
|
|
TBool
|
IsProtectedL
()
|
|
MDataSink
*
|
NewSinkL
()
|
|
MDataSource
*
|
NewSourceL
()
|
|
void
|
ReadBufferL
(
TInt
,
CMMFBuffer
*,
TInt
,
MDataSink
*)
|
|
void
|
ReadBufferL
(
CMMFBuffer
*,
TInt
,
MDataSink
*)
|
|
void
|
ReadBufferL
(
CMMFBuffer
*,
TInt
)
|
|
TInt
|
SetAgentProperty
(
ContentAccess::TAgentProperty
,
TInt
)
|
|
TInt
|
SetSize
(
TInt
)
|
|
void
|
SetTransferBuffer
(
TBool
)
|
|
TFourCC
|
SinkDataTypeCode
(
TMediaId
)
|
|
void
|
SinkPrimeL
()
|
|
void
|
SinkStopL
()
|
|
TBool
|
SinkStopped
()
|
|
void
|
SinkThreadLogoff
()
|
|
TInt
|
SinkThreadLogon
(
MAsyncEventHandler
&)
|
|
TInt
|
Size
()
|
|
TFourCC
|
SourceDataTypeCode
(
TMediaId
)
|
|
void
|
SourcePauseL
()
|
|
void
|
SourcePrimeL
()
|
|
void
|
SourceStopL
()
|
|
void
|
SourceThreadLogoff
()
|
|
TInt
|
SourceThreadLogon
(
MAsyncEventHandler
&)
|
|
const
TDesC
&
|
UniqueId
()
|
|
void
|
WriteBufferL
(
TInt
,
CMMFBuffer
*,
TInt
,
MDataSource
*)
|
|
void
|
WriteBufferL
(
CMMFBuffer
*,
TInt
,
MDataSource
*)
|
|
void
|
WriteBufferL
(
CMMFBuffer
*,
TInt
)
|
Constructor & Destructor Documentation
Member Functions Documentation
BufferEmptiedL(CMMFBuffer *)
|
void
|
BufferEmptiedL
|
(
|
CMMFBuffer
*
|
aBuffer
|
)
|
[virtual]
|
BufferFilledL(CMMFBuffer *)
|
void
|
BufferFilledL
|
(
|
CMMFBuffer
*
|
aBuffer
|
)
|
[virtual]
|
BytesFree()
|
TInt64
|
BytesFree
|
(
|
)
|
[virtual]
|
Returns the amount of space available for the clip.
This is a virtual function that each derived class must implement.
CanCreateSinkBuffer()
|
TBool
|
CanCreateSinkBuffer
|
(
|
)
|
[virtual]
|
CanCreateSourceBuffer()
|
TBool
|
CanCreateSourceBuffer
|
(
|
)
|
[virtual]
|
CanUseTransferBuffer()
|
TBool
|
CanUseTransferBuffer
|
(
|
)
|
|
CancelRequests()
|
void
|
CancelRequests
|
(
|
)
|
[protected]
|
ConstructL(const TDesC8 &, TMMFileMode)
ConstructSinkL(const TDesC8 &)
|
void
|
ConstructSinkL
|
(
|
const
TDesC8
&
|
aInitData
|
)
|
[protected, virtual]
|
ConstructSourceL(const TDesC8 &)
|
void
|
ConstructSourceL
|
(
|
const
TDesC8
&
|
aInitData
|
)
|
[protected, virtual]
|
CreateSinkBufferL(TMediaId, TBool &)
CreateSourceBufferL(TMediaId, TBool &)
Data(ContentAccess::CData *&)
Delete()
|
TInt
|
Delete
|
(
|
)
|
[virtual]
|
Deletes the clip.
This should be overriden in the derived classes, the default version returns KErrNotSupported.
EmptyBufferL(CMMFBuffer *, MDataSource *, TMediaId)
EvaluateIntent(ContentAccess::TIntent)
|
TInt
|
EvaluateIntent
|
(
|
ContentAccess::TIntent
|
aIntent
|
)
|
const [virtual]
|
Parameters
|
ContentAccess::TIntent
aIntent
|
|
ExecuteIntent(ContentAccess::TIntent)
|
TInt
|
ExecuteIntent
|
(
|
ContentAccess::TIntent
|
aIntent
|
)
|
[virtual]
|
Parameters
|
ContentAccess::TIntent
aIntent
|
|
Extension()
|
const
TDesC
&
|
Extension
|
(
|
)
|
const [virtual]
|
FileDrive()
|
const
TDesC
&
|
FileDrive
|
(
|
)
|
const [virtual]
|
FileL()
|
RFile
&
|
FileL
|
(
|
)
|
[virtual]
|
FileName()
|
const
TDesC
&
|
FileName
|
(
|
)
|
const [virtual]
|
FilePath()
|
const
TDesC
&
|
FilePath
|
(
|
)
|
const [virtual]
|
FillBufferL(CMMFBuffer *, MDataSink *, TMediaId)
IsProtectedL()
|
TBool
|
IsProtectedL
|
(
|
)
|
const [virtual]
|
ObtainCopyOfTransferBufferL(TInt)
|
CTransferBufferCopy *
|
ObtainCopyOfTransferBufferL
|
(
|
TInt
|
aMaxLength
|
)
|
[protected]
|
ReadBufferL(TInt, CMMFBuffer *, TInt, MDataSink *)
Reads aLength number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for asynchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
TInt
aLength
|
The number of bytes to read.
|
|
CMMFBuffer
* aBuffer
|
The buffer to read the data into.
|
|
TInt
aPosition
|
The offset from which to start reading.
|
|
MDataSink
* aConsumer
|
The sink of tha data read from the clip. Will be informed of read if not NULL.
|
ReadBufferL(CMMFBuffer *, TInt, MDataSink *)
Reads the maximum number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for asynchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
CMMFBuffer
* aBuffer
|
The buffer to read the data into.
|
|
TInt
aPosition
|
The offset from which to start reading.
|
|
MDataSink
* aConsumer
|
The sink of tha data read from the clip. Will be informed of read if not NULL.
|
ReadBufferL(CMMFBuffer *, TInt)
Reads the maximum number of bytes of data from the offset, aPosition into the buffer, aBuffer. Intended for synchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
CMMFBuffer
* aBuffer
|
The buffer to read the data into.
|
|
TInt
aPosition
|
The offset from which to start reading.
|
SetAgentProperty(ContentAccess::TAgentProperty, TInt)
|
TInt
|
SetAgentProperty
|
(
|
ContentAccess::TAgentProperty
|
aProperty,
|
|
|
TInt
|
aValue
|
|
|
)
|
[virtual]
|
Parameters
|
ContentAccess::TAgentProperty
aProperty
|
|
|
TInt
aValue
|
|
SetSize(TInt)
Sets the size of the clip. This should be overriden in the derived classes, the default version returns KErrNotSupported.
Parameters
|
TInt
aSize
|
The size of the clip.
|
SetTransferBuffer(TBool)
|
void
|
SetTransferBuffer
|
(
|
TBool
|
aTBuffer
|
)
|
|
SinkDataTypeCode(TMediaId)
SinkPrimeL()
|
void
|
SinkPrimeL
|
(
|
)
|
[virtual]
|
SinkStopL()
|
void
|
SinkStopL
|
(
|
)
|
[virtual]
|
SinkStopped()
|
TBool
|
SinkStopped
|
(
|
)
|
[virtual]
|
SinkThreadLogoff()
|
void
|
SinkThreadLogoff
|
(
|
)
|
[virtual]
|
SinkThreadLogon(MAsyncEventHandler &)
Size()
Returns the size of the clip in bytes.
This is a virtual function that each derived class must implement.
SourceDataTypeCode(TMediaId)
SourcePauseL()
|
void
|
SourcePauseL
|
(
|
)
|
[virtual]
|
SourcePrimeL()
|
void
|
SourcePrimeL
|
(
|
)
|
[virtual]
|
SourceStopL()
|
void
|
SourceStopL
|
(
|
)
|
[virtual]
|
SourceThreadLogoff()
|
void
|
SourceThreadLogoff
|
(
|
)
|
[virtual]
|
SourceThreadLogon(MAsyncEventHandler &)
StoreRequestL(CReadWriteRequest *)
|
void
|
StoreRequestL
|
(
|
CReadWriteRequest *
|
aRequest
|
)
|
[protected]
|
Parameters
|
CReadWriteRequest * aRequest
|
|
UniqueId()
|
const
TDesC
&
|
UniqueId
|
(
|
)
|
const [virtual]
|
WriteBufferL(TInt, CMMFBuffer *, TInt, MDataSource *)
Writes aLength number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for asynchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
TInt
aLength
|
The number of bytes to write.
|
|
CMMFBuffer
* aBuffer
|
The buffer to write the data into.
|
|
TInt
aPosition
|
The offset from which to start writing.
|
|
MDataSource
* aSupplier
|
The source of the data writen to the clip. Will be informed of write if not NULL.
|
WriteBufferL(CMMFBuffer *, TInt, MDataSource *)
Writes the maximum number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for asynchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
CMMFBuffer
* aBuffer
|
The buffer to write the data into.
|
|
TInt
aPosition
|
The offset from which to start writing.
|
|
MDataSource
* aSupplier
|
The source of the data writen to the clip. Will be informed of write if not NULL.
|
WriteBufferL(CMMFBuffer *, TInt)
Writes the maximum number of bytes of data from the offset, aPosition from the buffer, aBuffer. Intended for synchronous usage.
This is a virtual function that each derived class must implement.
Parameters
|
CMMFBuffer
* aBuffer
|
The buffer to write the data into.
|
|
TInt
aPosition
|
The offset from which to start writing.
|
Member Enumerations Documentation
Enum TMMFileMode
Indicates for which purpose the object instance is being created
Enumerators
|
ESourceMode
|
The object is created for being a source
|
|
ESinkMode
|
The object is created for being a sink
|
Member Data Documentation
CCAFParameters * iCAFParameters
MAsyncEventHandler * iEventHandler
MGenericFile * iFile
|
MGenericFile *
|
iFile
|
[private]
|
HBufC * iFileDrive
|
HBufC
*
|
iFileDrive
|
[private]
|
HBufC * iFileExt
|
HBufC
*
|
iFileExt
|
[private]
|
TBool
iFileHandle
|
TBool
|
iFileHandle
|
[private]
|
HBufC * iFileName
|
HBufC
*
|
iFileName
|
[private]
|
HBufC * iFilePath
|
HBufC
*
|
iFilePath
|
[private]
|
CMMFFileAsyncEventHandler * iMmfFileEventHandler
TUint
iPosition
|
TUint
|
iPosition
|
[private]
|
RPointerArray< CReadWriteRequest > iRequests
TBool
iReserved
|
TBool
|
iReserved
|
[private]
|
TBool
iSinkNotStopped
|
TBool
|
iSinkNotStopped
|
[private]
|
RPointerArray< CTransferBufferCopy > iTransferBufferCopies
|
RPointerArray
< CTransferBufferCopy >
|
iTransferBufferCopies
|
[private]
|
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.