Objective Systems, Inc.  
Home
About ASN.1
Products
Free Software
Documents
Services
Resources
Resellers
Customers
Careers
About Us
Contact Us
 

Google


Objective Systems, Inc.

rtxCppInputStreamIF.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2003-2006 Objective Systems, Inc.
00003  *
00004  * This software is furnished under a license and may be used and copied
00005  * only in accordance with the terms of such license and with the
00006  * inclusion of the above copyright notice. This software or any other
00007  * copies thereof may not be provided or otherwise made available to any
00008  * other person. No title to and ownership of the software is hereby
00009  * transferred.
00010  *
00011  * The information in this software is subject to change without notice
00012  * and should not be construed as a commitment by Objective Systems, Inc.
00013  *
00014  * PROPRIETARY NOTICE
00015  *
00016  * This software is an unpublished work subject to a confidentiality agreement
00017  * and is protected by copyright and trade secret law.  Unauthorized copying,
00018  * redistribution or other use of this work is prohibited.
00019  *
00020  * The above notice of copyright on this source code product does not indicate
00021  * any actual or intended publication of such source code.
00022  *
00023  *****************************************************************************/
00028 #ifndef _RTXCPPINPUTSTREAMIF_H_
00029 #define _RTXCPPINPUTSTREAMIF_H_
00030 
00031 #include "rtxsrc/rtxCppStreamIF.h"
00032 
00036 class EXTERNRTX OSInputStreamIF : public OSStreamIF {
00037  public:
00041    virtual ~OSInputStreamIF ();
00042 
00053    virtual int close () = 0;
00054 
00060    virtual size_t currentPos () = 0;
00061 
00070    virtual int flush () = 0;
00071 
00081    virtual int getStatus () const = 0;
00082 
00089    virtual OSBOOL isOpened () = 0;
00090 
00100    virtual OSBOOL markSupported () = 0;
00101 
00117    virtual int mark (size_t readAheadLimit) = 0;
00118 
00131    virtual long read (OSOCTET* pDestBuf, size_t maxToRead) = 0;
00132 
00145    virtual long readBlocking (OSOCTET* pDestBuf, size_t toReadBytes) = 0;
00146 
00156    virtual int reset () = 0;
00157 
00168    virtual int skip (size_t n) = 0;
00169 
00170 } ;
00171 
00172 class EXTERNRTX OSInputStreamPtr {
00173    OSInputStreamIF* mPtr; 
00174  public:
00175    inline OSInputStreamPtr (OSInputStreamIF* ptr) : mPtr (ptr) {}
00176    inline ~OSInputStreamPtr () { delete mPtr; }
00177 
00178    inline operator OSInputStreamIF* ()   { return mPtr; }
00179    inline OSInputStreamIF* operator-> () { return mPtr; }
00180 } ;
00181 
00182 #endif /* _RTXCPPINPUTSTREAMIF_H_ */

This file was last modified on 8 Jan 2007.
XBinder, Version 1.1.9