--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/genericopenlibs/cstdlib/INC/ESTW32SV.H Tue Feb 02 02:01:42 2010 +0200
@@ -0,0 +1,54 @@
+// Copyright (c) 1999-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:
+// EPOC Server providing access to Win32 stdin/stdout/stderr
+//
+//
+
+#include <e32std.h>
+#include <e32base.h>
+#include <estw32.h>
+/**
+@internalComponent
+*/
+enum TWin32Stream {
+ EWin32Read,
+ EWin32Write,
+ EWin32Flush
+ };
+
+//
+class CWin32Stream
+/**
+@internalComponent
+*/
+ {
+public:
+ static TInt StreamName(TInt aStream, TDes& aBuf);
+ static void StartServer(TInt aStream);
+ static TInt ThreadFunction(TAny* aPtr);
+private:
+ TInt Init(TInt aStream, const TDesC& aStreamName);
+ void HandleMessage();
+ TInt ReadStream(RMessage2& aMessage);
+ TInt WriteStream(RMessage2& aMessage);
+ void FlushStream();
+ TInt MapWin32Error(TInt aDefault);
+
+ RServer2 iServer;
+ RMessage2 iMessage;
+ TAny* iHandle;
+ TAny* iLogHandle; // used to log a copy of stream output, for debug purposes
+ };
+
+//