networkingtestandutils/networkingunittest/tdummyetel/FAXTSRC.H
changeset 0 af10295192d8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/networkingtestandutils/networkingunittest/tdummyetel/FAXTSRC.H	Tue Jan 26 15:23:49 2010 +0200
@@ -0,0 +1,107 @@
+// 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:
+// Contents :  for sending faxes from fax stores
+// 
+//
+
+#ifndef __FAXTSRC_H
+#define __FAXTSRC_H
+
+/**
+@internalComponent
+*/
+enum TFaxPreferredCompression
+	{
+	Prefer1D, Prefer2D 
+	};
+
+
+/********************************************************************/
+
+class TFaxEntry
+/**
+@internalComponent
+*/
+   {
+ public:
+   void InternalizeL (RReadStream &);
+   void ExternalizeL (RWriteStream &) const;
+
+   TInt iNameLength;
+   TFileName iFaxPageStore;
+   TInt iStartPage;
+   TInt iPageCount;
+   };
+
+/********************************************************************/
+
+class CFaxTransferSource : public CBase
+/**
+@internalComponent
+*/
+   {
+ public:
+   static CFaxTransferSource * NewL ();
+   static CFaxTransferSource * NewLC ();
+    ~CFaxTransferSource ();
+
+ protected:
+   void ConstructL ();
+   
+ public:
+   IMPORT_C void AddSourceL (const TFileName &, TFaxPreferredCompression);
+   IMPORT_C void AddSourceL (const TFileName &, TInt, TFaxPreferredCompression);
+   IMPORT_C void AddSourceL (const TFileName &, TInt, TInt, TFaxPreferredCompression);
+   IMPORT_C void RemoveAllSources ();
+
+   void GetNextPageReadyL ();
+
+   void OpenFaxInL (const TDesC & aFileName);
+   void PagePrepare ();
+   void WriteFaxDataL (const TDesC8 & aBuffer);
+   void WritePageParmsL (TFaxBufSenderId & aSenderId);
+   void CloseFaxInStore ();
+
+   TInt OpenFaxOutL (const TDesC & aFileName); // returns the number of pages in the file
+   TInt NextPageFind ();
+   void ReadPageParmsL ();
+   void ReadFaxData (TDes8 & aBuffer);
+   void PreviousPageFindL ();
+   void CloseFaxStore ();
+
+   TInt iLines;                 // length of image in lines
+   TInt iResolu;                // resolution of image
+   TInt iCompression;           // type of compression
+   TInt iBitOrder;              // little or big endian ordering of bits in a byte
+   TInt iPage;                  // page number of image in fax
+
+   TStreamId iOurStreamID;
+   CBufSeg * iSources;
+   RBufReadStream iInstream;
+   RBufWriteStream iOutstream;
+
+   CWriteFaxFile * iWriteFaxFile;
+   CReadFaxFile * iReadFaxFile;
+
+   TInt iFaxListEntries;
+   TInt iSavedFaxListEntries;
+   TInt iFaxPages;
+   TInt iPageInCurrentFile;
+	
+   TFaxPreferredCompression  iOurPreferredCompression;
+   TFaxEntry iOurFaxEntry;
+   };
+
+#endif
+