1 #ifndef CASSETTEPLAYER_HH
2 #define CASSETTEPLAYER_HH
20 class LoadingIndicator;
37 virtual const std::string&
getName()
const;
45 template<
typename Archive>
46 void serialize(Archive& ar,
unsigned version);
51 State getState()
const;
52 std::string getStateString()
const;
55 void setImageName(
const Filename& newImage);
56 const Filename& getImageName()
const;
57 void checkInvariants()
const;
62 void insertTape(
const Filename& filename);
86 bool isRolling()
const;
108 void fillBuf(
size_t length,
double x);
113 virtual int signalEvent(
const std::shared_ptr<const Event>& event);
118 static const size_t BUF_SIZE = 1024;
119 unsigned char buf[BUF_SIZE];
124 double partialInterval;
138 const std::unique_ptr<TapeCommand> tapeCommand;
139 const std::unique_ptr<LoadingIndicator> loadingIndicator;
140 const std::unique_ptr<BooleanSetting> autoRunSetting;
141 std::unique_ptr<Wav8Writer> recordImage;
142 std::unique_ptr<CassetteImage> playImage;
147 bool motor, motorControl;