KiCad PCB EDA Suite
richio.h File Reference
#include <vector>
#include <utf8.h>
#include <wx/wx.h>
#include <stdio.h>
#include <ki_exception.h>

Go to the source code of this file.

Classes

class  LINE_READER
 Class LINE_READER is an abstract class from which implementation specific LINE_READERs may be derived to read single lines of text and manage a line number counter. More...
 
class  FILE_LINE_READER
 Class FILE_LINE_READER is a LINE_READER that reads from an open file. More...
 
class  STRING_LINE_READER
 Class STRING_LINE_READER is a LINE_READER that reads from a multiline 8 bit wide std::string. More...
 
class  INPUTSTREAM_LINE_READER
 Class INPUTSTREAM_LINE_READER is a LINE_READER that reads from a wxInputStream object. More...
 
class  OUTPUTFORMATTER
 Class OUTPUTFORMATTER is an important interface (abstract class) used to output 8 bit text in a convenient way. More...
 
class  STRING_FORMATTER
 Class STRING_FORMATTER implements OUTPUTFORMATTER to a memory buffer. More...
 
class  FILE_OUTPUTFORMATTER
 Class FILE_OUTPUTFORMATTER may be used for text file output. More...
 
class  STREAM_OUTPUTFORMATTER
 Class STREAM_OUTPUTFORMATTER implements OUTPUTFORMATTER to a wxWidgets wxOutputStream. More...
 

Macros

#define RICHIO_H_
 
#define LINE_READER_LINE_DEFAULT_MAX   1000000
 
#define LINE_READER_LINE_INITIAL_SIZE   5000
 
#define OUTPUTFMTBUFZ   500
 
#define PRINTF_FUNC
 
#define LINE_READER_LINE_DEFAULT_MAX   1000000
 
#define LINE_READER_LINE_INITIAL_SIZE   5000
 
#define OUTPUTFMTBUFZ   500
 default buffer size for any OUTPUT_FORMATTER More...
 
#define PRINTF_FUNC
 

Functions

int StrPrintf (std::string *aResult, const char *aFormat,...)
 Function StrPrintf is like sprintf() but the output is appended to a std::string instead of to a character array. More...
 
std::string StrPrintf (const char *format,...)
 Function StrPrintf is like sprintf() but the output is returned in a std::string instead of to a character array. More...
 

Macro Definition Documentation

#define LINE_READER_LINE_DEFAULT_MAX   1000000
#define LINE_READER_LINE_DEFAULT_MAX   1000000

Definition at line 73 of file richio.h.

#define LINE_READER_LINE_INITIAL_SIZE   5000
#define LINE_READER_LINE_INITIAL_SIZE   5000

Definition at line 74 of file richio.h.

#define OUTPUTFMTBUFZ   500
#define OUTPUTFMTBUFZ   500

default buffer size for any OUTPUT_FORMATTER

Definition at line 309 of file richio.h.

#define PRINTF_FUNC
#define PRINTF_FUNC

Definition at line 379 of file richio.h.

#define RICHIO_H_

Definition at line 27 of file numeric_evaluator.cpp.

Function Documentation

int StrPrintf ( std::string *  aResult,
const char *  aFormat,
  ... 
)

Function StrPrintf is like sprintf() but the output is appended to a std::string instead of to a character array.

Parameters
aResultis the string to append to, previous text is not clear()ed.
aFormatis a printf() style format string.
Returns
int - the count of bytes appended to the result string, no terminating nul is included.

Definition at line 74 of file richio.cpp.

References vprint().

75 {
76  va_list args;
77 
78  va_start( args, format );
79  int ret = vprint( result, format, args );
80  va_end( args );
81 
82  return ret;
83 }
static int vprint(std::string *result, const char *format, va_list ap)
Definition: richio.cpp:38
std::string StrPrintf ( const char *  format,
  ... 
)

Function StrPrintf is like sprintf() but the output is returned in a std::string instead of to a character array.

Parameters
formatis a printf() style format string.
Returns
std::string - the result of the sprintf().

Definition at line 86 of file richio.cpp.

References vprint().

87 {
88  std::string ret;
89  va_list args;
90 
91  va_start( args, format );
92  int ignore = vprint( &ret, format, args );
93  (void) ignore;
94  va_end( args );
95 
96  return ret;
97 }
static int vprint(std::string *result, const char *format, va_list ap)
Definition: richio.cpp:38