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,
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;
90 static const uint32_t MAX_SPI_SPEED = 32000000;
91 static const uint16_t MAX_PORT_COUNT = 32;
96 #endif // PLUGINS_SPI_SPIDEVICE_H_ std::string DeviceId() const
The device ID.
Definition: SPIDevice.cpp:132
Definition: SPIDevice.h:40
Definition: SPIBackend.h:157
A RDM unique identifier (UID).
Definition: SPIWriter.h:53
Definition: SPIPlugin.h:33
Allocate UIDs from a pool.
Definition: UIDAllocator.h:46
Definition: PluginAdaptor.h:41
bool StartHook()
Called during Start().
Definition: SPIDevice.cpp:140
bool AllowMultiPortPatching() const
Allow multiple ports of the same type to be patched to the same universe.
Definition: SPIDevice.h:50
Definition: Preferences.h:147
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44
Definition: SPIBackend.h:66
A class to allocate UIDs.