00001 // Filename: bioStream.I 00002 // Created by: drose (25Sep02) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) 2001, Disney Enterprises, Inc. All rights reserved 00008 // 00009 // All use of this software is subject to the terms of the Panda 3d 00010 // Software license. You should have received a copy of this license 00011 // along with this source code; you will also find a current copy of 00012 // the license at http://www.panda3d.org/license.txt . 00013 // 00014 // To contact the maintainers of this program write to 00015 // panda3d@yahoogroups.com . 00016 // 00017 //////////////////////////////////////////////////////////////////// 00018 00019 00020 //////////////////////////////////////////////////////////////////// 00021 // Function: IBioStream::Constructor 00022 // Access: Public 00023 // Description: 00024 //////////////////////////////////////////////////////////////////// 00025 INLINE IBioStream:: 00026 IBioStream() : ISocketStream(&_buf) { 00027 } 00028 00029 //////////////////////////////////////////////////////////////////// 00030 // Function: IBioStream::Constructor 00031 // Access: Public 00032 // Description: 00033 //////////////////////////////////////////////////////////////////// 00034 INLINE IBioStream:: 00035 IBioStream(BioPtr *source) : ISocketStream(&_buf) { 00036 open(source); 00037 } 00038 00039 //////////////////////////////////////////////////////////////////// 00040 // Function: IBioStream::open 00041 // Access: Public 00042 // Description: 00043 //////////////////////////////////////////////////////////////////// 00044 INLINE IBioStream &IBioStream:: 00045 open(BioPtr *source) { 00046 clear((ios_iostate)0); 00047 _buf.open(source); 00048 return *this; 00049 } 00050 00051 //////////////////////////////////////////////////////////////////// 00052 // Function: IBioStream::close 00053 // Access: Public 00054 // Description: Resets the BioStream to empty, but does not actually 00055 // close the source BIO unless owns_source was true. 00056 //////////////////////////////////////////////////////////////////// 00057 INLINE IBioStream &IBioStream:: 00058 close() { 00059 _buf.close(); 00060 return *this; 00061 } 00062 00063 //////////////////////////////////////////////////////////////////// 00064 // Function: OBioStream::Constructor 00065 // Access: Public 00066 // Description: 00067 //////////////////////////////////////////////////////////////////// 00068 INLINE OBioStream:: 00069 OBioStream() : OSocketStream(&_buf) { 00070 } 00071 00072 //////////////////////////////////////////////////////////////////// 00073 // Function: OBioStream::Constructor 00074 // Access: Public 00075 // Description: 00076 //////////////////////////////////////////////////////////////////// 00077 INLINE OBioStream:: 00078 OBioStream(BioPtr *source) : OSocketStream(&_buf) { 00079 open(source); 00080 } 00081 00082 //////////////////////////////////////////////////////////////////// 00083 // Function: OBioStream::open 00084 // Access: Public 00085 // Description: 00086 //////////////////////////////////////////////////////////////////// 00087 INLINE OBioStream &OBioStream:: 00088 open(BioPtr *source) { 00089 clear((ios_iostate)0); 00090 _buf.open(source); 00091 return *this; 00092 } 00093 00094 //////////////////////////////////////////////////////////////////// 00095 // Function: OBioStream::close 00096 // Access: Public 00097 // Description: Resets the BioStream to empty, but does not actually 00098 // close the source BIO unless owns_source was true. 00099 //////////////////////////////////////////////////////////////////// 00100 INLINE OBioStream &OBioStream:: 00101 close() { 00102 _buf.close(); 00103 return *this; 00104 } 00105 00106 //////////////////////////////////////////////////////////////////// 00107 // Function: BioStream::Constructor 00108 // Access: Public 00109 // Description: 00110 //////////////////////////////////////////////////////////////////// 00111 INLINE BioStream:: 00112 BioStream() : SocketStream(&_buf) { 00113 } 00114 00115 //////////////////////////////////////////////////////////////////// 00116 // Function: BioStream::Constructor 00117 // Access: Public 00118 // Description: 00119 //////////////////////////////////////////////////////////////////// 00120 INLINE BioStream:: 00121 BioStream(BioPtr *source) : SocketStream(&_buf) { 00122 open(source); 00123 } 00124 00125 //////////////////////////////////////////////////////////////////// 00126 // Function: BioStream::open 00127 // Access: Public 00128 // Description: 00129 //////////////////////////////////////////////////////////////////// 00130 INLINE BioStream &BioStream:: 00131 open(BioPtr *source) { 00132 clear((ios_iostate)0); 00133 _buf.open(source); 00134 return *this; 00135 } 00136 00137 //////////////////////////////////////////////////////////////////// 00138 // Function: BioStream::close 00139 // Access: Public 00140 // Description: Resets the BioStream to empty, but does not actually 00141 // close the source BIO unless owns_source was true. 00142 //////////////////////////////////////////////////////////////////// 00143 INLINE BioStream &BioStream:: 00144 close() { 00145 _buf.close(); 00146 return *this; 00147 }