-/*
-This file is part of libmspparser
-Copyright © 2006 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-#ifndef MSP_PARSER_INPUT_H_
-#define MSP_PARSER_INPUT_H_
+#ifndef MSP_DATAFILE_INPUT_H_
+#define MSP_DATAFILE_INPUT_H_
-#include <istream>
+#include <msp/io/base.h>
namespace Msp {
-namespace Parser {
+namespace DataFile {
class Input
{
+private:
+ IO::Base *in;
+ IO::Base *compressed;
+ unsigned line;
+ int next;
+
public:
- Input(std::istream &);
+ Input(IO::Base &);
+ ~Input();
+
+ void set_decompress();
int get();
int peek();
unsigned get_line_number() const { return line; }
- operator bool() const { return (bool)in; }
-private:
- std::istream ∈
- unsigned line;
- int next;
+ operator bool() const;
};
-} // namespace Parser
+} // namespace DataFile
} // namespace Msp
#endif