windows-nt/Source/XPSP1/NT/base/fs/utils/ulib/inc/prtstrm.hxx
2020-09-26 16:20:57 +08:00

144 lines
2.5 KiB
C++
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*++
Copyright (c) 1991 Microsoft Corporation
Module Name:
prtstrm.hxx
Abstract:
This module contains the declaration for the PRINT_STREAM class.
The PRINT_STREAM is a class derived from STREAM that provides
methods to write data to a print device.
A PRINT_STREAM has always WRITE_ACCESS.
Author:
Jaime Sasson (jaimes) 18-Apr-1991
Environment:
ULIB, User Mode
--*/
#if !defined( _PRINT_STREAM_ )
#define _PRINT_STREAM_
#include "stream.hxx"
//
// Forward references
//
DECLARE_CLASS( PRINT_STREAM );
DECLARE_CLASS( WSTRING );
DECLARE_CLASS( PATH );
class PRINT_STREAM : public STREAM {
public:
ULIB_EXPORT
DECLARE_CONSTRUCTOR( PRINT_STREAM );
DECLARE_CAST_MEMBER_FUNCTION( PRINT_STREAM );
VIRTUAL
ULIB_EXPORT
~PRINT_STREAM(
);
NONVIRTUAL
ULIB_EXPORT
BOOLEAN
Initialize(
IN PCPATH DeviceName
);
VIRTUAL
BOOLEAN
IsAtEnd(
) CONST;
VIRTUAL
STREAMACCESS
QueryAccess(
) CONST;
VIRTUAL
BOOLEAN
Read(
OUT PBYTE Buffer,
IN ULONG BytesToRead,
OUT PULONG BytesRead
);
VIRTUAL
BOOLEAN
ReadChar(
OUT PWCHAR Char,
IN BOOLEAN Unicode DEFAULT FALSE
);
VIRTUAL
BOOLEAN
ReadMbString(
IN PSTR String,
IN DWORD BufferSize,
INOUT PDWORD StringSize,
IN PSTR Delimiters,
IN BOOLEAN ExpandTabs DEFAULT FALSE,
IN DWORD TabExp DEFAULT 8
);
VIRTUAL
BOOLEAN
ReadWString(
IN PWSTR String,
IN DWORD BufferSize,
INOUT PDWORD StringSize,
IN PWSTR Delimiters,
IN BOOLEAN ExpandTabs DEFAULT FALSE,
IN DWORD TabExp DEFAULT 8
);
VIRTUAL
BOOLEAN
ReadString(
OUT PWSTRING String,
IN PWSTRING Delimiters,
IN BOOLEAN Unicode DEFAULT FALSE
);
protected:
VIRTUAL
HANDLE
QueryHandle(
) CONST;
private:
NONVIRTUAL
VOID
Construct(
);
HANDLE _Handle;
};
#endif // _PRINT_STREAM_