www.pudn.com > doc2pdf-0_7_1.rar > doc2pdf_io.h
///////////////////////////////////////////////////////////////////////////// // // Project: Doc2pdf // // File: doc2pdf_io.h // // Author(s): Matt Peterson// // Description: I/O classes // ///////////////////////////////////////////////////////////////////////////// #ifndef DOC2PDF_SOCKET_H_INCLUDED #define DOC2PDF_SOCKET_H_INCLUDED #include "stdafx.h" #define MAX_IO_WAIT 60 // seconds //=========================================================================== // IO interface class class Doc2pdfIO { public: virtual int WriteLine(const CString& line) = 0; virtual int WriteLine(const char* line) = 0; virtual int Write(void* buf, int bufsize) = 0; virtual int ReadLine(CString& line) = 0; }; //=========================================================================== // Sockets class that actually does something class Doc2pdfSocket : public Doc2pdfIO { protected: SOCKET m_Sock; public: // Constructor Doc2pdfSocket(); // Destructor ~Doc2pdfSocket(); // Connects to a host. Returns zero on success, WSAError on failure int Connect(const CString& host, unsigned short port); // Writes a line. Returns zero on success, WSAError on failure int WriteLine(const CString& line); // Reads a line. Returns zero on success, WSAError on failure int WriteLine(LPCSTR line); // Reads a line. Returns zero on success, WSAError on failure int Write(void* buf, int bufsize); // Reads a line. Returns zero on success, WSAError on failure int ReadLine(CString& line); // Closes socket int Close(); }; //=========================================================================== // Sockets class that actually does something class Doc2pdfFile : public Doc2pdfIO { protected: int m_Fd; public: // Constructor Doc2pdfFile(); // Destructor ~Doc2pdfFile(); // Connects to a host. Returns zero on success, WSAError on failure int Connect(const CString& host, unsigned short port); // Writes a line. Returns zero on success, WSAError on failure int WriteLine(const CString& line); // Reads a line. Returns zero on success, WSAError on failure int WriteLine(LPCSTR line); // Reads a line. Returns zero on success, WSAError on failure int ReadLine(CString& line); // Closes socket int Close(); }; #endif