21 #ifndef PLUGINS_SPI_SPIDEVICE_H_
22 #define PLUGINS_SPI_SPIDEVICE_H_
28 #include "olad/Device.h"
29 #include "ola/io/SelectServer.h"
32 #include "plugins/spi/SPIBackend.h"
33 #include "plugins/spi/SPIWriter.h"
45 const std::string &spi_device,
50 bool AllowMultiPortPatching()
const {
return true; }
57 typedef std::vector<class SPIOutputPort*> SPIPorts;
59 std::auto_ptr<SPIWriterInterface> m_writer;
60 std::auto_ptr<SPIBackendInterface> m_backend;
64 std::string m_spi_device_name;
67 std::string SPIBackendKey()
const;
68 std::string SPISpeedKey()
const;
69 std::string SPICEKey()
const;
70 std::string PortCountKey()
const;
71 std::string SyncPortKey()
const;
72 std::string GPIOPinKey()
const;
75 std::string DeviceLabelKey(uint8_t port)
const;
76 std::string PersonalityKey(uint8_t port)
const;
77 std::string PixelCountKey(uint8_t port)
const;
78 std::string StartAddressKey(uint8_t port)
const;
79 std::string GetPortKey(
const std::string &suffix, uint8_t port)
const;
86 static const char SPI_DEVICE_NAME[];
87 static const char HARDWARE_BACKEND[];
88 static const char SOFTWARE_BACKEND[];
89 static const uint16_t MAX_GPIO_PIN = 1023;
94 #endif // PLUGINS_SPI_SPIDEVICE_H_
Definition: SPIDevice.h:40
Definition: SPIBackend.h:157
A RDM unique identifier (UID).
Definition: SPIWriter.h:53
Definition: SPIPlugin.h:33
std::string DeviceId() const
The device ID.
Definition: SPIDevice.cpp:128
Allocate UIDs from a pool.
Definition: UIDAllocator.h:46
Definition: PluginAdaptor.h:41
bool StartHook()
Called during Start().
Definition: SPIDevice.cpp:136
Definition: Preferences.h:145
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44
Definition: SPIBackend.h:66
A class to allocate UIDs.