XFcCFLResourceFilter class Reference

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XFcCFLResourceFilter Class Reference

Class factory to handle compressors, preprocessors and encryptors. More...

Inheritance diagram for XFcCFLResourceFilter:

[legend]
List of all members.

## Public Member Functions

virtual XFCIMPORT | ~XFcCFLResourceFilter ()
| Virtual destructor.

## Static Public Member Functions

XFCIMPORT INT8 * | unhandle (const XFcCFLResource *aRes, UINT32 aCompressionFlags)
| Decompresses, decrypts and reverse processes data.
XFCIMPORT XFcCFLResource * | handle (const INT8 *aData, UINT32 aDataSize, UINT32 &aCompressionFlags)
| Compresses, encrypts and processes data.
XFCIMPORT const CHAR * | handlerInfoString (UINT32 aTag)
| Returns a printable string of the handler.
XFCIMPORT const CHAR * | handlerShortName (UINT32 aTag)
| Returns a printable short name of the handler.
XFCIMPORT void | enumerateHandlers (XFcCFLEnumerator *aEnumerator)
| Enumerates handlers (for GUI use generally).
XFCIMPORT void | enableHandler (UINT32 aTag, INT aState)
| Enables or disables handlers (for GUI use generally).
XFCIMPORT void | setKey (UINT32 aTag, void *aKey)
| Sets key for encrypter.

## Public Attributes

XFcCFLResourceFilter * | mNext
| Pointer to the next handler, or NULL if at end of list.

## Protected Member Functions

| XFcCFLResourceFilter ()
| Protected constructor.
virtual void | process (INT8 *aDataIn, INT8 **aDataOut, UINT32 aDataInSize, UINT32 &aDataOutSize)=0
| Processes (e.g. compress, encrypt..) data.
virtual void | reverseProcess (INT8 *aDatain, INT8 **aDataout, UINT32 aDataInSize, UINT32 &aDataOutSize)=0
| Reverse processes (e.g. decompress, decrypt..) data.
virtual void | setCipherKey (void *aKey)
| Sets the cipher key.

## Static Protected Member Functions

void | registerHandler (XFcCFLResourceFilter *aHandler)
| Registers a handler.
XFcCFLResourceFilter * | findHandler (UINT32 aTag)
| Finds a handler for a tag.

## Protected Attributes

CHAR * | mInfoString
| Pointer to a printable info string.
CHAR * | mShortName
| Pointer to a printable short name (10 chars or less preferably).
INT | mEnabled
| Boolean flag, indicates if this handler is enabled or not.
UINT32 | mTag
| Tag of the current handler.

## Detailed Description

Class factory to handle compressors, preprocessors and encryptors.

## Constructor & Destructor Documentation

XFcCFLResourceFilter::XFcCFLResourceFilter | ( |  | ) | `[protected]`

Protected constructor.

Constructor must:

- set tag and infostring
- call registerHandler(tag, this)

virtual XFCIMPORT XFcCFLResourceFilter::~XFcCFLResourceFilter | ( |  | ) | `[virtual]`

| Virtual destructor.

## Member Function Documentation

XFCIMPORT void XFcCFLResourceFilter::enableHandler | ( | UINT32 | aTag,
|  | INT | aState
| ) | `[static]`

| Enables or disables handlers (for GUI use generally).

XFCIMPORT void XFcCFLResourceFilter::enumerateHandlers | ( | XFcCFLEnumerator * | aEnumerator | ) | `[static]`

| Enumerates handlers (for GUI use generally).

XFcCFLResourceFilter* XFcCFLResourceFilter::findHandler | ( | UINT32 | aTag | ) | `[static, protected]`

| Finds a handler for a tag.

XFCIMPORT XFcCFLResource* XFcCFLResourceFilter::handle | ( | const INT8 * | aData,
|  | UINT32 | aDataSize,
|  | UINT32 & | aCompressionFlags
| ) | `[static]`

Compresses, encrypts and processes data.

Note:
  CompressionFlags may change during handling.

XFCIMPORT const CHAR* XFcCFLResourceFilter::handlerInfoString | ( | UINT32 | aTag | ) | `[static]`

| Returns a printable string of the handler.

XFCIMPORT const CHAR* XFcCFLResourceFilter::handlerShortName | ( | UINT32 | aTag | ) | `[static]`

| Returns a printable short name of the handler.

virtual void XFcCFLResourceFilter::process | ( | INT8 * | aDataIn,
|  | INT8 ** | aDataOut,
|  | UINT32 | aDataInSize,
|  | UINT32 & | aDataOutSize
| ) | `[protected, pure virtual]`

| Processes (e.g. compress, encrypt..) data. Implemented in XFcCFLFilterZlib, and XFcCFLFilterNone.

void XFcCFLResourceFilter::registerHandler | ( | XFcCFLResourceFilter * | aHandler | ) | `[static, protected]`

| Registers a handler.

virtual void XFcCFLResourceFilter::reverseProcess | ( | INT8 * | aDatain,
|  | INT8 ** | aDataout,
|  | UINT32 | aDataInSize,
|  | UINT32 & | aDataOutSize
| ) | `[protected, pure virtual]`

| Reverse processes (e.g. decompress, decrypt..) data. Implemented in XFcCFLFilterZlib, and XFcCFLFilterNone.

virtual void XFcCFLResourceFilter::setCipherKey | ( | void * | aKey | ) | `[protected, virtual]`

| Sets the cipher key.

XFCIMPORT void XFcCFLResourceFilter::setKey | ( | UINT32 | aTag,
|  | void * | aKey
| ) | `[static]`

| Sets key for encrypter.

XFCIMPORT INT8* XFcCFLResourceFilter::unhandle | ( | const XFcCFLResource * | aRes,
|  | UINT32 | aCompressionFlags
| ) | `[static]`

| Decompresses, decrypts and reverse processes data.

## Member Data Documentation

INT XFcCFLResourceFilter::mEnabled`[protected]`

| Boolean flag, indicates if this handler is enabled or not.

CHAR* XFcCFLResourceFilter::mInfoString`[protected]`

| Pointer to a printable info string.

XFcCFLResourceFilter* XFcCFLResourceFilter::mNext

| Pointer to the next handler, or NULL if at end of list.

CHAR* XFcCFLResourceFilter::mShortName`[protected]`

| Pointer to a printable short name (10 chars or less preferably).

UINT32 XFcCFLResourceFilter::mTag`[protected]`

Tag of the current handler.

Tag format:
EPOC
|||+- Compressor
||+-- Compressor variant (option)
|+--- Preprocessor
+---- Encryptor
Each handler must leave the rest of the bits to zero.
(e.g. 000Z, 00D0, 0X00)

|  | X-Forge Documentation Confidential Copyright © 2002-2003 Fathammer |  | Documentation generated with doxygen by Dimitri van Heesch