Blame src/ftextstream.h

Packit 1c1d7e
#ifndef FTEXTSTREAM_H
Packit 1c1d7e
#define FTEXTSTREAM_H
Packit 1c1d7e
Packit 1c1d7e
#include <stdio.h>
Packit 1c1d7e
Packit 1c1d7e
#include <qiodevice.h>
Packit 1c1d7e
#include <qstring.h>
Packit 1c1d7e
#include <qgstring.h>
Packit 1c1d7e
Packit 1c1d7e
/** @brief Simplified and optimized version of QTextStream */
Packit 1c1d7e
class FTextStream
Packit 1c1d7e
{
Packit 1c1d7e
  public:
Packit 1c1d7e
    FTextStream();
Packit 1c1d7e
    FTextStream( QIODevice * );
Packit 1c1d7e
    FTextStream( QGString * );
Packit 1c1d7e
    FTextStream( FILE * );
Packit 1c1d7e
    virtual ~FTextStream();
Packit 1c1d7e
Packit 1c1d7e
    QIODevice	*device() const;
Packit 1c1d7e
    void	 setDevice( QIODevice * );
Packit 1c1d7e
    void	 unsetDevice();
Packit 1c1d7e
Packit 1c1d7e
    FTextStream &operator<<( char );
Packit 1c1d7e
    FTextStream &operator<<( const char *);
Packit 1c1d7e
    FTextStream &operator<<( const QString & );
Packit 1c1d7e
    FTextStream &operator<<( const QCString & );
Packit 1c1d7e
    FTextStream &operator<<( signed short );
Packit 1c1d7e
    FTextStream &operator<<( unsigned short );
Packit 1c1d7e
    FTextStream &operator<<( signed int );
Packit 1c1d7e
    FTextStream &operator<<( unsigned int );
Packit 1c1d7e
    FTextStream &operator<<( signed long );
Packit 1c1d7e
    FTextStream &operator<<( unsigned long );
Packit 1c1d7e
    FTextStream &operator<<( float );
Packit 1c1d7e
    FTextStream &operator<<( double );
Packit 1c1d7e
Packit 1c1d7e
  private:
Packit 1c1d7e
    QIODevice *m_dev;
Packit 1c1d7e
    bool m_owndev;
Packit 1c1d7e
    FTextStream &output_int( ulong n, bool neg );
Packit 1c1d7e
Packit 1c1d7e
  private:	// Disabled copy constructor and operator=
Packit 1c1d7e
#if defined(Q_DISABLE_COPY)
Packit 1c1d7e
    FTextStream( const FTextStream & );
Packit 1c1d7e
    FTextStream &operator=( const FTextStream & );
Packit 1c1d7e
#endif
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &FTextStream::operator<<( char c)
Packit 1c1d7e
{
Packit 1c1d7e
  if (m_dev) m_dev->putch(c);
Packit 1c1d7e
  return *this;
Packit 1c1d7e
}
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &FTextStream::operator<<( const char* s)
Packit 1c1d7e
{
Packit 1c1d7e
  uint len = qstrlen( s );
Packit 1c1d7e
  if (m_dev) m_dev->writeBlock( s, len );
Packit 1c1d7e
  return *this;
Packit 1c1d7e
}
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &FTextStream::operator<<( const QString & s)
Packit 1c1d7e
{
Packit 1c1d7e
  return operator<<(s.data());
Packit 1c1d7e
}
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &FTextStream::operator<<( const QCString &s)
Packit 1c1d7e
{
Packit 1c1d7e
  return operator<<(s.data());
Packit 1c1d7e
}
Packit 1c1d7e
Packit 1c1d7e
typedef FTextStream & (*FTSFUNC)(FTextStream &);// manipulator function
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &operator<<( FTextStream &s, FTSFUNC f )
Packit 1c1d7e
{ return (*f)( s ); }
Packit 1c1d7e
Packit 1c1d7e
inline FTextStream &endl( FTextStream & s)
Packit 1c1d7e
{
Packit 1c1d7e
  return s << '\n';
Packit 1c1d7e
}
Packit 1c1d7e
Packit 1c1d7e
#endif // FTEXTSTREAM_H