HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_IStream Class Reference

#include <UT_IStream.h>

+ Inheritance diagram for UT_IStream:

Public Types

enum  { UT_SEEK_BEG =UT_IOS_SEEK_BEG, UT_SEEK_CUR =UT_IOS_SEEK_CUR, UT_SEEK_END =UT_IOS_SEEK_END }
 
enum  FileSystemType { UT_FSYSTEM_UNKNOWN, UT_FSYSTEM_LOCAL, UT_FSYSTEM_NETWORK }
 Return whether the stream refers to a local drive or a network path. More...
 

Public Member Functions

 UT_IStream ()
 
 UT_IStream (FILE *fp, UT_ISTREAM_READTYPE binary=UT_ISTREAM_BINARY, bool bufferable=true)
 
 UT_IStream (std::istream &is, UT_ISTREAM_READTYPE binary=UT_ISTREAM_BINARY, bool bufferable=true)
 
 UT_IStream (const char *buffer, size_t bufsize, UT_ISTREAM_READTYPE binary)
 
 UT_IStream (const UT_WorkBuffer &buffer, UT_ISTREAM_READTYPE binary=UT_ISTREAM_ASCII)
 
virtual ~UT_IStream ()
 
void init (FILE *fp, UT_ISTREAM_READTYPE binary=UT_ISTREAM_BINARY, bool bufferable=true)
 
void init (std::istream &is, UT_ISTREAM_READTYPE binary=UT_ISTREAM_BINARY, bool bufferable=true)
 
void init (const char *buffer, size_t bufsize, UT_ISTREAM_READTYPE binary)
 
void init (const UT_WorkBuffer &buffer, UT_ISTREAM_READTYPE binary=UT_ISTREAM_ASCII)
 
virtual int64 getMemoryUsage (bool inclusive) const
 
const char * getFilename () const
 
void setIsFile (bool isFile)
 
void setIsSubStream (bool is_sub_stream)
 
bool isSubStream () const
 
bool isRandomAccessFile (UT_WorkBuffer &filename) const
 
FileSystemType getFileSystemType () const
 
int getFileDescriptor () const
 
bool isEof () const
 
bool isError () const
 
void setError (bool is_error)
 
bool isAscii () const
 
bool isBinary () const
 
void setVersion (int version)
 
int getVersion () const
 
void setLabel (const UT_StringHolder &label)
 
const UT_StringHoldergetLabel () const
 
void pushBinary (UT_ISTREAM_READTYPE binary)
 
void popBinary ()
 
void pushOperation (const char *operation)
 
void popOperation ()
 
UT_IStreamBufgetStreamBuffer ()
 
UT_UniquePtr< UT_IStreamgetSubStream (exint start, exint nbytes)
 
UT_UniquePtr< UT_IStreamgetZlibStream ()
 
UT_UniquePtr< UT_IStreamgetGzipStream ()
 
UT_UniquePtr< UT_IStreamgetBloscStream ()
 
UT_UniquePtr< UT_IStreamgetSCStream ()
 
bool getLine (UT_WorkBuffer &buffer, int end='\n')
 
bool skipLine (int end='\n')
 
bool getWord (UT_WorkBuffer &buffer)
 
bool getString (UT_WorkBuffer &buffer)
 
bool skipWhitespace (int64 &line_count, int64 &line_start_pos)
 
bool skipWhitespace ()
 
bool getJSONWord (UT_WorkBuffer &buffer, bool &real)
 
bool getAll (UT_WorkBuffer &buffer)
 
bool getAllAscii (UT_WorkBuffer &buffer)
 
bool getNonCommentWord (UT_WorkBuffer &buffer, int comment='#')
 
exint getNonCommentLine (UT_WorkBuffer &buffer, int comment='#', bool strip_inline_comments=true)
 
bool checkNonCommentToken (const char *expected, int comment='#')
 
bool checkToken (const char *expected)
 
SYS_FORCE_INLINE int getc ()
 
SYS_FORCE_INLINE int peek ()
 
SYS_FORCE_INLINE exint ungetc ()
 
SYS_FORCE_INLINE exint unwind (exint amount)
 
exint read (bool *array, exint sz=1)
 
exint read (int16 *array, exint sz=1)
 
exint read (uint16 *array, exint sz=1)
 
exint read (int32 *array, exint sz=1)
 
exint read (uint32 *array, exint sz=1)
 
exint read (int64 *array, exint sz=1)
 
exint read (uint64 *array, exint sz=1)
 
bool read (UT_String &string)
 
bool read (std::string &bytes)
 
bool read (UT_StringHolder &string)
 
template<typename SOURCE_TYPE , typename T >
exint read (T *array, exint sz, exint max_elem)
 
exint read (bool *array, exint sz, exint max_elem)
 
bool readBinaryString (UT_String &str, UT_ISTREAM_RLE_IO startbits)
 
bool readBinaryString (UT_StringHolder &string, UT_ISTREAM_RLE_IO startbits)
 
exint readStringRLE (UT_ISTREAM_RLE_IO startbits)
 
bool readBool (bool &result)
 
bool readChar (char &result)
 
bool areadChar (char &result)
 
exint bread (bool *buffer, exint size=1)
 
exint bread (char *buffer, exint asize=1)
 
exint bread (unsigned char *buffer, exint asize=1)
 
exint bread (signed char *buffer, exint asize=1)
 
exint bread (int16 *buffer, exint asize=1)
 
exint bread (uint16 *buffer, exint asize=1)
 
exint bread (int32 *buffer, exint asize=1)
 
exint bread (uint32 *buffer, exint asize=1)
 
exint bread (int64 *buffer, exint asize=1)
 
exint bread (uint64 *buffer, exint asize=1)
 
bool bread (UT_String &str)
 
bool bread (std::string &bytes)
 
bool bread (UT_StringHolder &bytes)
 
bool bread (UT_WorkBuffer &bytes)
 
exint aread (bool *buffer, exint asize=1)
 
exint aread (int16 *buffer, exint asize=1)
 
exint aread (uint16 *buffer, exint asize=1)
 
exint aread (int32 *buffer, exint asize=1)
 
exint aread (uint32 *buffer, exint asize=1)
 
exint aread (int64 *buffer, exint asize=1)
 
exint aread (uint64 *buffer, exint asize=1)
 
exint aread (fpreal16 *buffer, exint asize=1)
 
exint aread (fpreal32 *buffer, exint asize=1)
 
exint aread (fpreal64 *buffer, exint asize=1)
 
bool aread (UT_String &str)
 
bool aread (std::string &bytes)
 
bool aread (UT_StringHolder &bytes)
 
bool aread (UT_WorkBuffer &bytes)
 
exint tellg () const
 
bool seekg (exint pos, int seekdir=UT_SEEK_BEG)
 
template<typename SOURCE_TYPE >
exint read (int32 *val, exint sz=1)
 
template<typename SOURCE_TYPE >
exint read (int64 *val, exint sz=1)
 
template<typename SOURCE_TYPE >
exint read (fpreal16 *val, exint sz=1)
 
template<typename SOURCE_TYPE >
exint read (fpreal32 *val, exint sz=1)
 
template<typename SOURCE_TYPE >
exint read (fpreal64 *val, exint sz=1)
 
template<typename SOURCE_TYPE >
exint bread (int32 *buffer, exint asize=1)
 
template<typename SOURCE_TYPE >
exint bread (int64 *buffer, exint asize=1)
 
template<typename SOURCE_TYPE >
exint bread (fpreal16 *buffer, exint asize=1)
 
template<typename SOURCE_TYPE >
exint bread (fpreal32 *buffer, exint asize=1)
 
template<typename SOURCE_TYPE >
exint bread (fpreal64 *buffer, exint asize=1)
 

Static Public Member Functions

static void setStdinCompatible (bool state)
 

Protected Member Functions

 UT_IStream (const UT_StringHolder &filename, const UT_Options *open_options, bool bufferable)
 
 UT_IStream (UT_IStreamBuf *sbuf, UT_ISTREAM_READTYPE binary)
 
void initCommon (UT_ISTREAM_READTYPE binary)
 
bool readString (UT_String &str, bool binary)
 
bool readStdString (std::string &bytes, bool binary)
 
bool readStringHolder (UT_StringHolder &bytes, bool binary)
 
bool readWorkBuffer (UT_WorkBuffer &bytes, bool binary)
 
void setError ()
 
void clearError ()
 
- Protected Member Functions inherited from UT_NonCopyableNS::UT_NonCopyable
 UT_NonCopyable ()=default
 
 ~UT_NonCopyable ()=default
 
 UT_NonCopyable (const UT_NonCopyable &)=delete
 
UT_NonCopyableoperator= (const UT_NonCopyable &)=delete
 

Protected Attributes

UT_SmallArray< int, sizeof(int)*4 > myBinaryStack
 
UT_Array< const char * > myOperationStack
 
UT_IStreamBufmyStream
 
UT_StringHolder myLabel
 
int myVersion
 
bool myBinary
 
bool myEof
 
bool myError
 
bool myIsFile
 
bool myIsSubStream
 

Detailed Description

Member Enumeration Documentation

anonymous enum
Enumerator
UT_SEEK_BEG 
UT_SEEK_CUR 
UT_SEEK_END 

Definition at line 114 of file UT_IStream.h.

Return whether the stream refers to a local drive or a network path.

Enumerator
UT_FSYSTEM_UNKNOWN 
UT_FSYSTEM_LOCAL 
UT_FSYSTEM_NETWORK 

Definition at line 133 of file UT_IStream.h.

Constructor & Destructor Documentation

UT_IStream::UT_IStream ( )
inline

WARNING: You MUST call init before using a default-constructed UT_IStream!

Definition at line 61 of file UT_IStream.h.

UT_IStream::UT_IStream ( FILE *  fp,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_BINARY,
bool  bufferable = true 
)
inline

FIXME: Many functions will assert when bufferable is false, because they assume that they can read directly from the buffer.

Definition at line 66 of file UT_IStream.h.

UT_IStream::UT_IStream ( std::istream &  is,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_BINARY,
bool  bufferable = true 
)
inline

Definition at line 69 of file UT_IStream.h.

UT_IStream::UT_IStream ( const char *  buffer,
size_t  bufsize,
UT_ISTREAM_READTYPE  binary 
)
inline

Definition at line 72 of file UT_IStream.h.

UT_IStream::UT_IStream ( const UT_WorkBuffer buffer,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_ASCII 
)
inline

Definition at line 76 of file UT_IStream.h.

virtual UT_IStream::~UT_IStream ( )
virtual
UT_IStream::UT_IStream ( const UT_StringHolder filename,
const UT_Options open_options,
bool  bufferable 
)
protected
UT_IStream::UT_IStream ( UT_IStreamBuf sbuf,
UT_ISTREAM_READTYPE  binary 
)
protected

Member Function Documentation

exint UT_IStream::aread ( bool *  buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( int16 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( uint16 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( int32 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( uint32 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( int64 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( uint64 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( fpreal16 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( fpreal32 buffer,
exint  asize = 1 
)
exint UT_IStream::aread ( fpreal64 buffer,
exint  asize = 1 
)
bool UT_IStream::aread ( UT_String str)
inline

Definition at line 481 of file UT_IStream.h.

bool UT_IStream::aread ( std::string bytes)
inline

Definition at line 482 of file UT_IStream.h.

bool UT_IStream::aread ( UT_StringHolder bytes)
inline

Definition at line 484 of file UT_IStream.h.

bool UT_IStream::aread ( UT_WorkBuffer bytes)
inline

Definition at line 486 of file UT_IStream.h.

bool UT_IStream::areadChar ( char &  result)
inline

Definition at line 400 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::bread ( int32 buffer,
exint  asize = 1 
)

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

template<typename SOURCE_TYPE >
exint UT_IStream::bread ( int64 buffer,
exint  asize = 1 
)

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

template<typename SOURCE_TYPE >
exint UT_IStream::bread ( fpreal16 buffer,
exint  asize = 1 
)

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

template<typename SOURCE_TYPE >
exint UT_IStream::bread ( fpreal32 buffer,
exint  asize = 1 
)

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

template<typename SOURCE_TYPE >
exint UT_IStream::bread ( fpreal64 buffer,
exint  asize = 1 
)

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

exint UT_IStream::bread ( bool *  buffer,
exint  size = 1 
)
inline

Definition at line 430 of file UT_IStream.h.

exint UT_IStream::bread ( char *  buffer,
exint  asize = 1 
)
exint UT_IStream::bread ( unsigned char *  buffer,
exint  asize = 1 
)
inline

Definition at line 436 of file UT_IStream.h.

exint UT_IStream::bread ( signed char *  buffer,
exint  asize = 1 
)
inline

Definition at line 438 of file UT_IStream.h.

exint UT_IStream::bread ( int16 buffer,
exint  asize = 1 
)
exint UT_IStream::bread ( uint16 buffer,
exint  asize = 1 
)
inline

Definition at line 441 of file UT_IStream.h.

exint UT_IStream::bread ( int32 buffer,
exint  asize = 1 
)
exint UT_IStream::bread ( uint32 buffer,
exint  asize = 1 
)
inline

Definition at line 444 of file UT_IStream.h.

exint UT_IStream::bread ( int64 buffer,
exint  asize = 1 
)
exint UT_IStream::bread ( uint64 buffer,
exint  asize = 1 
)
inline

Definition at line 447 of file UT_IStream.h.

bool UT_IStream::bread ( UT_String str)
inline

Definition at line 449 of file UT_IStream.h.

bool UT_IStream::bread ( std::string bytes)
inline

Definition at line 450 of file UT_IStream.h.

bool UT_IStream::bread ( UT_StringHolder bytes)
inline

Definition at line 452 of file UT_IStream.h.

bool UT_IStream::bread ( UT_WorkBuffer bytes)
inline

Definition at line 454 of file UT_IStream.h.

bool UT_IStream::checkNonCommentToken ( const char *  expected,
int  comment = '#' 
)
inline

Reads in the next token (skipping comments) and compares it to the expected value. Returns true if the tokens match, and false otherwise.

Definition at line 244 of file UT_IStream.h.

bool UT_IStream::checkToken ( const char *  expected)
inline

Reads in the next token and compares it to the expected value. Returns true if the tokens match, and false otherwise.

Examples:
GEO/GEO_VoxelTranslator.C, and standalone/geo2voxel.C.

Definition at line 254 of file UT_IStream.h.

void UT_IStream::clearError ( )
inlineprotected

Definition at line 504 of file UT_IStream.h.

bool UT_IStream::getAll ( UT_WorkBuffer buffer)

Reads in the entire stream from the current position to the end. Returns true if anything was read in, false otherwise. Use isError() to test error state.

bool UT_IStream::getAllAscii ( UT_WorkBuffer buffer)

Does the same as getAll, except any carriage return-newline (
) sequences are converted into newlines (
).

UT_UniquePtr<UT_IStream> UT_IStream::getBloscStream ( )
SYS_FORCE_INLINE int UT_IStream::getc ( )
inline

getc and peek return the character read as an unsigned char cast to an int, or -1 (EOF) on failure. In other words, characters with the high bit set will return a number from 128 to 255, not a negative number.

Definition at line 268 of file UT_IStream.h.

int UT_IStream::getFileDescriptor ( ) const

Returns the open file descriptor, if any. Be careful what you do with it.

const char* UT_IStream::getFilename ( ) const

Retrieves the filename of this stream if it was created from file returns NULL otherwise

FileSystemType UT_IStream::getFileSystemType ( ) const
UT_UniquePtr<UT_IStream> UT_IStream::getGzipStream ( )
bool UT_IStream::getJSONWord ( UT_WorkBuffer buffer,
bool &  real 
)

Read a JSON token. This assumes that leading white space has been trimmed and will read all characters until:

  • a space (\f, \v, \r, \n, \t, ' ')
  • a separator ('/', '{', '}', '[', ']', ',', ':', '"')
    Note
    The real flag will be set if the word contains ('.', 'e', or 'E')
const UT_StringHolder& UT_IStream::getLabel ( ) const
inline

Definition at line 166 of file UT_IStream.h.

bool UT_IStream::getLine ( UT_WorkBuffer buffer,
int  end = '\n' 
)
Examples:
SIM/SNOW_Solver.C.
virtual int64 UT_IStream::getMemoryUsage ( bool  inclusive) const
virtual

NOTE: This counts the memory of the UT_IStreamBuf, even though it may be shared among multiple UT_IStream objects.

exint UT_IStream::getNonCommentLine ( UT_WorkBuffer buffer,
int  comment = '#',
bool  strip_inline_comments = true 
)

Skips all the comment lines and reads the next line in the stream. Returns the number of lines read. Note that the resulting line will be stripped of leading white space as well. The strip_inline_comments argument determines whether or not the resulting line should have comments at the end, if any, stripped.

bool UT_IStream::getNonCommentWord ( UT_WorkBuffer buffer,
int  comment = '#' 
)

Skips all the comment lines and reads the next token in the stream. Returns true if successful and false otherwise.

UT_UniquePtr<UT_IStream> UT_IStream::getSCStream ( )
UT_IStreamBuf* UT_IStream::getStreamBuffer ( )
inline

Definition at line 187 of file UT_IStream.h.

bool UT_IStream::getString ( UT_WorkBuffer buffer)
UT_UniquePtr<UT_IStream> UT_IStream::getSubStream ( exint  start,
exint  nbytes 
)

Returns a stream represenging a substream of the parent stream starting at 'start' byte and containin 'nbytes'.

int UT_IStream::getVersion ( ) const
inline

Definition at line 160 of file UT_IStream.h.

bool UT_IStream::getWord ( UT_WorkBuffer buffer)
UT_UniquePtr<UT_IStream> UT_IStream::getZlibStream ( )
void UT_IStream::init ( FILE *  fp,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_BINARY,
bool  bufferable = true 
)
void UT_IStream::init ( std::istream &  is,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_BINARY,
bool  bufferable = true 
)
void UT_IStream::init ( const char *  buffer,
size_t  bufsize,
UT_ISTREAM_READTYPE  binary 
)
void UT_IStream::init ( const UT_WorkBuffer buffer,
UT_ISTREAM_READTYPE  binary = UT_ISTREAM_ASCII 
)
void UT_IStream::initCommon ( UT_ISTREAM_READTYPE  binary)
protected
bool UT_IStream::isAscii ( ) const
inline

Definition at line 152 of file UT_IStream.h.

bool UT_IStream::isBinary ( ) const
inline

Definition at line 153 of file UT_IStream.h.

bool UT_IStream::isEof ( ) const
bool UT_IStream::isError ( ) const
inline

Definition at line 149 of file UT_IStream.h.

bool UT_IStream::isRandomAccessFile ( UT_WorkBuffer filename) const

Check whether the stream refers to a filename and whether the file supports random seeks.

Examples:
field3d/GEO_Field3DTranslator.C.
bool UT_IStream::isSubStream ( ) const
inline

Definition at line 105 of file UT_IStream.h.

SYS_FORCE_INLINE int UT_IStream::peek ( )
inline

Definition at line 270 of file UT_IStream.h.

void UT_IStream::popBinary ( )
void UT_IStream::popOperation ( )
void UT_IStream::pushBinary ( UT_ISTREAM_READTYPE  binary)

The read() methods use the binary state of the stream to determine whether to read ASCII or binary values. Rather than calling this method directly, it would be better to create a UT_IStreamAutoBinary, which will automatically pop the state on its destruction.

void UT_IStream::pushOperation ( const char *  operation)

For error handling. If an error occurs on the stream, the operation will be added to the error message (i.e. "loading image"). Rather than calling this method directly, it would probably be better to use UT_IStreamAutoOp which automatically pops the operation.

exint UT_IStream::read ( bool *  array,
exint  sz = 1 
)
inline
exint UT_IStream::read ( int16 array,
exint  sz = 1 
)
inline

Definition at line 292 of file UT_IStream.h.

exint UT_IStream::read ( uint16 array,
exint  sz = 1 
)
inline

Definition at line 296 of file UT_IStream.h.

exint UT_IStream::read ( int32 array,
exint  sz = 1 
)
inline

Definition at line 300 of file UT_IStream.h.

exint UT_IStream::read ( uint32 array,
exint  sz = 1 
)
inline

Definition at line 304 of file UT_IStream.h.

exint UT_IStream::read ( int64 array,
exint  sz = 1 
)
inline

Definition at line 308 of file UT_IStream.h.

exint UT_IStream::read ( uint64 array,
exint  sz = 1 
)
inline

Definition at line 312 of file UT_IStream.h.

bool UT_IStream::read ( UT_String string)
inline

Definition at line 316 of file UT_IStream.h.

bool UT_IStream::read ( std::string bytes)
inline

Definition at line 320 of file UT_IStream.h.

bool UT_IStream::read ( UT_StringHolder string)
inline

Definition at line 324 of file UT_IStream.h.

template<typename SOURCE_TYPE , typename T >
exint UT_IStream::read ( T array,
exint  sz,
exint  max_elem 
)
inline

Definition at line 332 of file UT_IStream.h.

exint UT_IStream::read ( bool *  array,
exint  sz,
exint  max_elem 
)
inline

Definition at line 346 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::read ( int32 val,
exint  sz = 1 
)
inline

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

Definition at line 410 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::read ( int64 val,
exint  sz = 1 
)
inline

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

Definition at line 412 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::read ( fpreal16 val,
exint  sz = 1 
)
inline

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

Definition at line 414 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::read ( fpreal32 val,
exint  sz = 1 
)
inline

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

Definition at line 416 of file UT_IStream.h.

template<typename SOURCE_TYPE >
exint UT_IStream::read ( fpreal64 val,
exint  sz = 1 
)
inline

Read a floating point value of the specified source type into the given destination variable, performing a conversion as necessary.

Definition at line 418 of file UT_IStream.h.

bool UT_IStream::readBinaryString ( UT_String str,
UT_ISTREAM_RLE_IO  startbits 
)

Read a string that was saved by first writing the number of bytes in the stream, followed by the string itself. The length was stored using as few bytes as possible, and startbits specifies the minimum number of size bits it can expect. Note that a UT_String cannot contain data with null's, so use readBinaryData below or read(std::string &) for binary data.

bool UT_IStream::readBinaryString ( UT_StringHolder string,
UT_ISTREAM_RLE_IO  startbits 
)
bool UT_IStream::readBool ( bool &  result)
inline

Definition at line 390 of file UT_IStream.h.

bool UT_IStream::readChar ( char &  result)
inline

Definition at line 394 of file UT_IStream.h.

bool UT_IStream::readStdString ( std::string bytes,
bool  binary 
)
protected
bool UT_IStream::readString ( UT_String str,
bool  binary 
)
protected
bool UT_IStream::readStringHolder ( UT_StringHolder bytes,
bool  binary 
)
protected
exint UT_IStream::readStringRLE ( UT_ISTREAM_RLE_IO  startbits)

Reads the length of a string buffer. This will be an integer of the provided startbits. If the value is negative, it signifies that the next larger integer will be stored after. The usual default value is 16 to match UT_String default saving.

bool UT_IStream::readWorkBuffer ( UT_WorkBuffer bytes,
bool  binary 
)
protected
bool UT_IStream::seekg ( exint  pos,
int  seekdir = UT_SEEK_BEG 
)

Query or seek to a position in the stream. Please see documentation for standard istreams for further information.

void UT_IStream::setError ( bool  is_error)
inline

Definition at line 150 of file UT_IStream.h.

void UT_IStream::setError ( )
protected
void UT_IStream::setIsFile ( bool  isFile)
inline

Definition at line 100 of file UT_IStream.h.

void UT_IStream::setIsSubStream ( bool  is_sub_stream)
inline

It can be useful to know if this stream is a substream, particularly when this stream is flagged as a file.

Definition at line 104 of file UT_IStream.h.

void UT_IStream::setLabel ( const UT_StringHolder label)
inline

The label methods provide a way to give the stream a label which is used to identify the stream in error messages. For example, UT_IFStream sets the label to the filename.

Definition at line 165 of file UT_IStream.h.

static void UT_IStream::setStdinCompatible ( bool  state)
static
void UT_IStream::setVersion ( int  version)
inline

The version information can be used to stash version information with the stream itself rather than having to pass the version information through to all other loading methods. This is used primarily in legacy geometry loading.

Definition at line 159 of file UT_IStream.h.

bool UT_IStream::skipLine ( int  end = '\n')
inline

Definition at line 521 of file UT_IStream.h.

bool UT_IStream::skipWhitespace ( int64 line_count,
int64 line_start_pos 
)
inline

Definition at line 545 of file UT_IStream.h.

bool UT_IStream::skipWhitespace ( )
inline

Definition at line 533 of file UT_IStream.h.

exint UT_IStream::tellg ( ) const
inline

Query or seek to a position in the stream. Please see documentation for standard istreams for further information.

Definition at line 123 of file UT_IStream.h.

SYS_FORCE_INLINE exint UT_IStream::ungetc ( )
inline

Definition at line 277 of file UT_IStream.h.

SYS_FORCE_INLINE exint UT_IStream::unwind ( exint  amount)
inline

Definition at line 278 of file UT_IStream.h.

Member Data Documentation

bool UT_IStream::myBinary
protected

Definition at line 515 of file UT_IStream.h.

UT_SmallArray<int,sizeof(int)*4> UT_IStream::myBinaryStack
protected

Definition at line 508 of file UT_IStream.h.

bool UT_IStream::myEof
protected

Definition at line 515 of file UT_IStream.h.

bool UT_IStream::myError
protected

Definition at line 515 of file UT_IStream.h.

bool UT_IStream::myIsFile
protected

Definition at line 516 of file UT_IStream.h.

bool UT_IStream::myIsSubStream
protected

Definition at line 517 of file UT_IStream.h.

UT_StringHolder UT_IStream::myLabel
protected

Definition at line 513 of file UT_IStream.h.

UT_Array<const char *> UT_IStream::myOperationStack
protected

Definition at line 510 of file UT_IStream.h.

UT_IStreamBuf* UT_IStream::myStream
protected

Definition at line 512 of file UT_IStream.h.

int UT_IStream::myVersion
protected

Definition at line 514 of file UT_IStream.h.


The documentation for this class was generated from the following file: