OSCReceiverWrapper.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. ==============================================================================
  3. OSCReceiverWrapper.h
  4. Created: 5 May 2025 2:34:15pm
  5. Author: Luigi
  6. ==============================================================================
  7. */
  8. #pragma once
  9. #include <JuceHeader.h>
  10. #include "PluginProcessor.h"
  11. enum Preset {
  12. NONE,
  13. PENCIL,
  14. CRAYON,
  15. FOUNTAINPEN,
  16. PEN,
  17. MARKER,
  18. MONOLINE,
  19. WATERCOLOR
  20. };
  21. class OSCReceiverWrapper : public juce::Component,
  22. private juce::OSCReceiver,
  23. private juce::OSCReceiver::ListenerWithOSCAddress<juce::OSCReceiver::MessageLoopCallback>
  24. {
  25. public:
  26. OSCReceiverWrapper(int port, juce::AudioProcessor* pluginProcessor);
  27. ~OSCReceiverWrapper();
  28. void oscMessageReceived(const juce::OSCMessage& message) override;
  29. void oscConnectionError();
  30. void processMessage();
  31. private:
  32. enum Preset currentPreset = NONE;
  33. float x;
  34. float y;
  35. float aspectX;
  36. float aspectY;
  37. float pressure;
  38. float thickness;
  39. CMLSProjectAudioProcessor *pluginProcessor;
  40. };