synthberry
Software MIDI synthesizer for the Raspberry Pi.
 All Classes Functions
inoteobservable.h
1 #ifndef INOTEOBSERVABLE_H
2 #define INOTEOBSERVABLE_H
3 
4 #include <memory>
5 #include "note.h"
6 
7 class INoteObserver;
8 using PNoteObserver = std::shared_ptr<INoteObserver>;
9 
11 {
12 public:
13  virtual ~INoteObservable(){};
14  virtual const std::vector<Note> getNotes() const = 0;
15  virtual void registerObserver(PNoteObserver &observer) = 0;
16  virtual void removeObserver(PNoteObserver &observer) = 0;
17 };
18 
19 using PNoteObservable = std::shared_ptr<INoteObservable>;
20 
21 #endif // INOTEOBSERVABLE_H