1//===- LDReader.h ---------------------------------------------------------===//
2//
3//                     The MCLinker Project
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9#ifndef MCLD_LD_LDREADER_H_
10#define MCLD_LD_LDREADER_H_
11
12namespace mcld {
13
14class Input;
15
16/** \class LDReader
17 *  \brief LDReader provides the basic interfaces for all readers. It also
18 *  provides basic functions to read data stream.
19 */
20class LDReader {
21 public:
22  enum Endian { LittleEndian, BigEndian };
23
24 protected:
25  LDReader() {}
26
27 public:
28  virtual ~LDReader() {}
29
30  virtual bool isMyFormat(Input& pInput, bool& pContinue) const = 0;
31};
32
33}  // namespace mcld
34
35#endif  // MCLD_LD_LDREADER_H_
36