GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave_tstdiostream< BUF_T, STREAM_T, FILE_T > Class Template Reference

#include "oct-stdstrm.h"

Inheritance diagram for octave_tstdiostream< BUF_T, STREAM_T, FILE_T >:
Collaboration diagram for octave_tstdiostream< BUF_T, STREAM_T, FILE_T >:

Public Member Functions

 octave_tstdiostream (const octave_tstdiostream &)=delete
 
 octave_tstdiostream (const std::string &n, FILE_T f=0, int fid=0, std::ios::openmode m=std::ios::in|std::ios::out, octave::mach_info::float_format ff=octave::mach_info::native_float_format(), const std::string &encoding="utf-8", typename BUF_T::close_fcn cf=BUF_T::file_close)
 
bool bad (void) const
 
void clear (void)
 
void close (void)
 
void do_close (void)
 
bool eof (void) const
 
std::string error (bool clear, int &err_num)
 
int file_number (void) const
 
std::istream * input_stream (void)
 
bool is_open (void) const
 
std::string name (void) const
 
bool ok (void) const
 
octave_tstdiostreamoperator= (const octave_tstdiostream &)=delete
 
std::ostream * output_stream (void)
 
BUF_T * rdbuf (void) const
 
int seek (off_t offset, int origin)
 
off_t tell (void)
 

Protected Member Functions

 ~octave_tstdiostream (void)
 
void clearerr (void)
 
std::string encoding (void) const
 
void error (const std::string &msg)
 
void error (const std::string &who, const std::string &msg)
 
mach_info::float_format float_format (void) const
 
int mode (void) const
 

Protected Attributes

int fnum
 
std::ios::openmode m_mode
 
std::string m_name
 
STREAM_Tm_stream
 

Private Member Functions

std::string do_gets (octave_idx_type max_len, bool &err, bool strip_newline, const std::string &who)
 
int do_numeric_printf_conv (std::ostream &os, const printf_format_elt *elt, int nsa, int sa_1, int sa_2, const octave_value &val, const std::string &who)
 
bool do_oscanf (const scanf_format_elt *elt, octave_value &, const std::string &who)
 
int do_printf (printf_format_list &fmt_list, const octave_value_list &args, const std::string &who)
 
octave_value do_scanf (scanf_format_list &fmt_list, octave_idx_type nr, octave_idx_type nc, bool one_elt_size_spec, octave_idx_type &count, const std::string &who)
 
octave_value do_textscan (const std::string &fmt, octave_idx_type ntimes, const octave_value_list &options, const std::string &who, octave_idx_type &count)
 
void field_width_error (const std::string &who) const
 
int flush (void)
 
std::string getl (octave_idx_type max_len, bool &err, const std::string &who)
 
std::string gets (octave_idx_type max_len, bool &err, const std::string &who)
 
void invalid_operation (const std::string &who, const char *rw)
 
octave_value_list oscanf (const std::string &fmt, const std::string &who)
 
int printf (const std::string &fmt, const octave_value_list &args, const std::string &who)
 
int puts (const std::string &s, const std::string &who)
 
octave_value scanf (const std::string &fmt, const Array< double > &size, octave_idx_type &count, const std::string &who)
 
off_t skipl (off_t count, bool &err, const std::string &who)
 

Private Attributes

std::string m_encoding
 
std::string m_errmsg
 
bool m_fail
 
mach_info::float_format m_flt_fmt
 
bool m_open_state
 

Detailed Description

template<typename BUF_T, typename STREAM_T, typename FILE_T>
class octave_tstdiostream< BUF_T, STREAM_T, FILE_T >

Definition at line 37 of file oct-stdstrm.h.

Constructor & Destructor Documentation

◆ octave_tstdiostream() [1/2]

template<typename BUF_T , typename STREAM_T , typename FILE_T >
octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::octave_tstdiostream ( const std::string &  n,
FILE_T  f = 0,
int  fid = 0,
std::ios::openmode  m = std::ios::in | std::ios::out,
octave::mach_info::float_format  ff = octave::mach_info::native_float_format (),
const std::string &  encoding = "utf-8",
typename BUF_T::close_fcn  cf = BUF_T::file_close 
)
inline

Definition at line 42 of file oct-stdstrm.h.

◆ octave_tstdiostream() [2/2]

template<typename BUF_T , typename STREAM_T , typename FILE_T >
octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::octave_tstdiostream ( const octave_tstdiostream< BUF_T, STREAM_T, FILE_T > &  )
delete

◆ ~octave_tstdiostream()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::~octave_tstdiostream ( void  )
inlineprotected

Definition at line 120 of file oct-stdstrm.h.

Member Function Documentation

◆ bad()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
bool octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::bad ( void  ) const
inline

Definition at line 95 of file oct-stdstrm.h.

◆ clear()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
void octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::clear ( void  )
inline

Definition at line 97 of file oct-stdstrm.h.

◆ clearerr()

void octave::base_stream::clearerr ( void  )
protectedinherited

◆ close()

void octave::base_stream::close ( void  )
inlineinherited

Definition at line 124 of file oct-stream.h.

◆ do_close()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
void octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::do_close ( void  )
inlinevirtual

Reimplemented from octave::base_stream.

Definition at line 103 of file oct-stdstrm.h.

◆ do_gets()

◆ do_numeric_printf_conv()

◆ do_oscanf()

◆ do_printf()

◆ do_scanf()

◆ do_textscan()

octave_value octave::base_stream::do_textscan ( const std::string &  fmt,
octave_idx_type  ntimes,
const octave_value_list options,
const std::string &  who,
octave_idx_type count 
)
privateinherited

◆ encoding()

◆ eof()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
bool octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::eof ( void  ) const
inlinevirtual

Implements octave::base_stream.

Definition at line 71 of file oct-stdstrm.h.

◆ error() [1/3]

◆ error() [2/3]

void octave::base_stream::error ( const std::string &  msg)
protectedinherited

Definition at line 3988 of file oct-stream.cc.

References octave::base_stream::m_errmsg, and octave::base_stream::m_fail.

◆ error() [3/3]

void octave::base_stream::error ( const std::string &  who,
const std::string &  msg 
)
protectedinherited

Definition at line 3995 of file oct-stream.cc.

References octave::base_stream::m_errmsg, and octave::base_stream::m_fail.

◆ field_width_error()

void octave::base_stream::field_width_error ( const std::string &  who) const
privateinherited

Definition at line 5866 of file oct-stream.cc.

References octave::base_stream::error().

Referenced by octave::base_stream::do_printf().

◆ file_number()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
int octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::file_number ( void  ) const
inlinevirtual

Reimplemented from octave::base_stream.

Definition at line 93 of file oct-stdstrm.h.

◆ float_format()

mach_info::float_format octave::base_stream::float_format ( void  ) const
inlineprotectedinherited

Definition at line 157 of file oct-stream.h.

◆ flush()

int octave::base_stream::flush ( void  )
privateinherited

◆ getl()

std::string octave::base_stream::getl ( octave_idx_type  max_len,
bool &  err,
const std::string &  who 
)
privateinherited

Definition at line 4129 of file oct-stream.cc.

References octave::base_stream::do_gets().

◆ gets()

std::string octave::base_stream::gets ( octave_idx_type  max_len,
bool &  err,
const std::string &  who 
)
privateinherited

Definition at line 4136 of file oct-stream.cc.

References octave::base_stream::do_gets().

◆ input_stream()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
std::istream* octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::input_stream ( void  )
inlinevirtual

Reimplemented from octave::base_stream.

Definition at line 77 of file oct-stdstrm.h.

◆ invalid_operation()

void octave::base_stream::invalid_operation ( const std::string &  who,
const char *  rw 
)
privateinherited

◆ is_open()

bool octave::base_stream::is_open ( void  ) const
inlineinherited

Definition at line 120 of file oct-stream.h.

◆ mode()

int octave::base_stream::mode ( void  ) const
inlineprotectedinherited

Definition at line 155 of file oct-stream.h.

Referenced by octave_fstream::input_stream(), and octave_fstream::output_stream().

◆ name()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
std::string octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::name ( void  ) const
inlinevirtual

Implements octave::base_stream.

Definition at line 75 of file oct-stdstrm.h.

◆ ok()

bool octave::base_stream::ok ( void  ) const
inlineinherited

◆ operator=()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
octave_tstdiostream& octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::operator= ( const octave_tstdiostream< BUF_T, STREAM_T, FILE_T > &  )
delete

◆ oscanf()

◆ output_stream()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
std::ostream* octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::output_stream ( void  )
inlinevirtual

Reimplemented from octave::base_stream.

Definition at line 82 of file oct-stdstrm.h.

◆ printf()

int octave::base_stream::printf ( const std::string &  fmt,
const octave_value_list args,
const std::string &  who 
)
privateinherited

◆ puts()

int octave::base_stream::puts ( const std::string &  s,
const std::string &  who 
)
privateinherited

◆ rdbuf()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
BUF_T* octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::rdbuf ( void  ) const
inline

Definition at line 88 of file oct-stdstrm.h.

◆ scanf()

octave_value octave::base_stream::scanf ( const std::string &  fmt,
const Array< double > &  size,
octave_idx_type count,
const std::string &  who 
)
privateinherited

◆ seek()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
int octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::seek ( off_t  offset,
int  origin 
)
inlinevirtual

Implements octave::base_stream.

Definition at line 60 of file oct-stdstrm.h.

◆ skipl()

off_t octave::base_stream::skipl ( off_t  count,
bool &  err,
const std::string &  who 
)
privateinherited

◆ tell()

template<typename BUF_T , typename STREAM_T , typename FILE_T >
off_t octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::tell ( void  )
inlinevirtual

Implements octave::base_stream.

Definition at line 67 of file oct-stdstrm.h.

Member Data Documentation

◆ fnum

template<typename BUF_T , typename STREAM_T , typename FILE_T >
int octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::fnum
protected

Definition at line 118 of file oct-stdstrm.h.

◆ m_encoding

std::string octave::base_stream::m_encoding
privateinherited

Definition at line 184 of file oct-stream.h.

◆ m_errmsg

std::string octave::base_stream::m_errmsg
privateinherited

Definition at line 193 of file oct-stream.h.

Referenced by octave::base_stream::clear(), and octave::base_stream::error().

◆ m_fail

bool octave::base_stream::m_fail
privateinherited

Definition at line 187 of file oct-stream.h.

Referenced by octave::base_stream::clear(), and octave::base_stream::error().

◆ m_flt_fmt

mach_info::float_format octave::base_stream::m_flt_fmt
privateinherited

Definition at line 181 of file oct-stream.h.

◆ m_mode

template<typename BUF_T , typename STREAM_T , typename FILE_T >
std::ios::openmode octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::m_mode
protected

Definition at line 113 of file oct-stdstrm.h.

◆ m_name

template<typename BUF_T , typename STREAM_T , typename FILE_T >
std::string octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::m_name
protected

Definition at line 111 of file oct-stdstrm.h.

◆ m_open_state

bool octave::base_stream::m_open_state
privateinherited

Definition at line 190 of file oct-stream.h.

◆ m_stream

template<typename BUF_T , typename STREAM_T , typename FILE_T >
STREAM_T* octave_tstdiostream< BUF_T, STREAM_T, FILE_T >::m_stream
protected

Definition at line 115 of file oct-stdstrm.h.


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