summaryrefslogtreecommitdiffstats
path: root/CPP/Common/StdInStream.h
blob: 67ef82bf3d28b632af93e16b62270296db254598 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// Common/StdInStream.h

#ifndef __COMMON_STDINSTREAM_H
#define __COMMON_STDINSTREAM_H

#include <stdio.h>

#include "MyString.h"
#include "Types.h"

class CStdInStream
{
  bool _streamIsOpen;
  FILE *_stream;
public:
  CStdInStream(): _streamIsOpen(false) {};
  CStdInStream(FILE *stream): _streamIsOpen(false), _stream(stream) {};
  ~CStdInStream();
  bool Open(LPCTSTR fileName);
  bool Close();

  AString ScanStringUntilNewLine(bool allowEOF = false);
  void ReadToString(AString &resultString);
  UString ScanUStringUntilNewLine();

  bool Eof();
  int GetChar();
};

extern CStdInStream g_StdIn;

#endif