telephonyserver/etelserverandcore/INC/FAXDEFN.H
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserver/etelserverandcore/INC/FAXDEFN.H	Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,147 @@
+// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// FaxDefn Header
+// 
+//
+
+
+
+/**
+ @file
+ @publishedAll
+ @released
+*/
+
+#ifndef __FAXDEFN_H
+#define	__FAXDEFN_H
+
+#include <e32std.h>
+
+//
+// Fax class definition
+//
+/** Defines the fax modem classes supported by the fax client.
+
+The fax class refers to the command set used to control the modem. 
+
+@publishedAll
+@released
+*/
+enum TFaxClass
+	{
+	/** Automatic detection of the fax modem class. */
+	EClassAuto=0,
+	/** Fax class 1 */
+	EClass1=1,
+	/** Fax class 2 */
+	EClass2=2,
+	/** Fax class 2.0 */
+	EClass2point0=4,
+	/** Fax class 1.0 */
+	EClass1point0=8,
+	/** Fax class 2.1 */
+	EClass2point1=16
+	};
+
+//
+// Fax phase definition
+//
+/** Fax session phases.
+
+Defines what is done if a fax session fails is dependent on the current phase. 
+@publishedAll
+@released
+*/
+enum TFaxPhase
+	{
+	/** The session has not yet begun */
+	ENotYetStarted,
+	/** Phase 'A'. Establishing connection. */
+	ECallEstablishment='A',
+	/** Phase 'B'. Negotiating fax protocols. */
+	ESessionNegotiation='B',
+	/** Phase 'C'. Transferring information */
+	EDataTransfer='C',
+	/** Phase 'D'. Confirming successful send/receive. */
+	EPostPageStatus='D',
+	/** Phase 'E'. Disconnecting. */
+	EDisconnection='E'
+	};
+
+//
+// Fax resolution definition
+//
+/** Defines the supported fax resolutions. 
+
+It is also used by the fax store classes. 
+
+@publishedAll
+@released
+*/
+enum TFaxResolution
+	{
+	/** Normal fax resolution 3.85 lines/mm */
+	EFaxNormal,
+	/** Fine fax resolution 7.7 lines/mm */
+	EFaxFine
+	};
+
+//
+// Fax compression definition
+//
+/** Defines the types of compression supported by the fax client.
+
+This enumeration is also used by the fax store classes. 
+
+@publishedAll
+@released
+*/
+enum TFaxCompression
+	{
+	/** One-dimensional T.4 encoding. Also known as MH. */
+	EModifiedHuffman=0,
+	/** Two-dimensional T.4 encoding. Also known as MR. */
+	EModifiedRead=1,
+	/** Two-dimensional T.4 encoding including uncompressed mode. */
+	EUncompressedModifiedRead=2,
+	/** T.6 encoding. Not supported by the fax engine. Also known as MMR. */
+	EModifiedModifiedRead=3
+	};
+
+/**
+Scan Line Constants
+@publishedAll
+@released
+*/
+const TInt KFaxPixelsPerScanLine(1728);
+const TInt KFaxBytesPerScanLine(216);	
+
+const TInt KFaxCmPerScanLine(215);
+const TInt KFaxScanLinesPer10Cm(385);
+const TInt KFaxFineScanLinesPer10Cm(770);
+const TInt KFaxT4MaxDesLength(896);
+const TInt KFaxLinesPerBand(64);
+
+/** Defines a buffer to hold a fax sender ID. */
+typedef TBuf<20> TFaxBufSenderId;
+/** Defines a raw scan line. 
+
+Each scan line is comprised of KFaxBytesPerScanLine (216) bytes. */
+typedef TBuf8 < KFaxBytesPerScanLine > TRawScanLine;
+
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include "fax_reversebytes.h"
+#endif
+
+#endif