Files
fluxengine/lib/decoders/decoders.h
David Given 259a02898f Massive refactor to overhaul and simplify the decoder system. Amiga has been
disabled (because it needs rewriting now).
2019-02-19 00:39:13 +01:00

25 lines
579 B
C++

#ifndef DECODERS_H
#define DECODERS_H
#include "segmenter.h"
class Sector;
class Fluxmap;
class RawRecord;
typedef std::vector<std::unique_ptr<RawRecord>> RawRecordVector;
typedef std::vector<std::unique_ptr<Sector>> SectorVector;
extern std::vector<uint8_t> decodeFmMfm(const std::vector<bool> bits);
class AbstractDecoder : public AbstractSegmenter
{
public:
virtual ~AbstractDecoder() {}
virtual nanoseconds_t guessClock(Fluxmap& fluxmap) const;
virtual SectorVector decodeToSectors(const RawRecordVector& rawrecords) = 0;
};
#endif