00001 /*00002 * Copyright (C) 1997-2005 by Objective Systems, Inc.00003 *00004 * This software is furnished under a license and may be used and copied00005 * only in accordance with the terms of such license and with the00006 * inclusion of the above copyright notice. This software or any other00007 * copies thereof may not be provided or otherwise made available to any00008 * other person. No title to and ownership of the software is hereby00009 * transferred.00010 *00011 * The information in this software is subject to change without notice00012 * and should not be construed as a commitment by Objective Systems, Inc.00013 *00014 * PROPRIETARY NOTICE00015 *00016 * This software is an unpublished work subject to a confidentiality agreement00017 * 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 indicate00021 * any actual or intended publication of such source code.00022 *00023 *****************************************************************************/00024
00030 #ifndef _ASN1XERINPUTSTREAM_H_00031 #define _ASN1XERINPUTSTREAM_H_00032
00033 #include "asn1XerCppTypes.h"00034 #include "ASN1Stream.h"00035 #include "OSCSocket.h"00036
00049class EXTERNXER ASN1XERInputStream : publicASN1XERDecodeBuffer {
00050 protected:
00051 ASN1XERInputStream (constchar* pFilename) :
00052 ASN1XERDecodeBuffer (pFilename) { }
00053 public:
00061ASN1XERInputStream (OSCInputStream& inputStream) :
00062 ASN1XERDecodeBuffer (inputStream) { }
00063
00073ASN1XERInputStream (const ASN1OCTET* msgbuf, size_t numocts) :
00074 ASN1XERDecodeBuffer (msgbuf, numocts) { }
00075
00085 ASN1XERInputStream& operator >> (ASN1CType& val);
00086
00095 int decodeObj (ASN1CType& val);
00096
00097 } ;
00098
00103class EXTERNXER ASN1XERFileInputStream : publicASN1XERInputStream {
00104 public:
00113 ASN1XERFileInputStream (constchar* pFilename) :
00114 ASN1XERInputStream (pFilename) { }
00115
00125 ASN1XERFileInputStream (FILE* file) :
00126 ASN1XERInputStream (*new OSCFileInputStream (file)) { }
00127 } ;
00128
00133class EXTERNXER ASN1XERSocketInputStream : publicASN1XERInputStream {
00134 protected:
00135 OSCSocket mSocket;
00136 public:
00149 ASN1XERSocketInputStream (OSRTSOCKET socket, ASN1BOOL ownership = FALSE) :
00150 ASN1XERInputStream (*new OSCSocketInputStream (socket, ownership)) { }
00151
00152
00160 ASN1XERSocketInputStream (OSCSocket& socket) :
00161 ASN1XERInputStream (*new OSCSocketInputStream (socket)) { }
00162 } ;
00163
00167 #endif /* _ASN1XERINPUTSTREAM_H_ */00168
This document may be distributed in any form, electronic
or otherwise, provided that it is distributed in its entirety
and that the copyright and this notice are included.
This file was last modified on
8 Sep 2005. ASN1C XER Runtime, ASN1C v5.8x