8 #include <rtti/factory.h>
9 #include <nap/device.h>
11 #include <nap/numeric.h>
12 #include <condition_variable>
14 #include <nap/timer.h>
75 virtual void stop()
override;
92 void send(
float channelData,
int channel);
107 void send(
uint8 channelData,
int channel);
124 static Address createAddress(
uint8 subnet,
uint8 universe);
132 static void convertAddress(Address address,
uint8& subnet,
uint8& universe);
137 float mWaitTime = 2.0f;
139 int mUnicastLimit = 10;
140 bool mVerbose =
false;
141 float mReadTimeout = 2.0f;
142 std::string mIpAddress =
"";
181 void update(
double deltaTime);
186 int mSocketDescriptor = -1;
189 std::future<void> mReadTask;
190 std::condition_variable mConditionVar;
191 std::mutex mPollMutex;
194 std::atomic<bool> mExit = {
false };
constexpr int refreshRate
The max supported artnet refresh rate.
Definition: artnetcontroller.h:27
uint8_t uint8
Definition: numeric.h:16
EArtnetMode
Definition: artnetcontroller.h:37
Definition: errorstate.h:19
Definition: artnetcontroller.h:50
Definition: artnetservice.h:39
std::vector< uint8 > ByteChannelData
Definition: artnetcontroller.h:55
Definition: templateapp.h:17
uint16_t uint16
Definition: numeric.h:18
uint8 Address
Definition: artnetcontroller.h:57
void * ArtNetNode
Definition: artnetcontroller.h:18
@ Broadcast
Artnet data is broadcasted over the network.
std::vector< float > FloatChannelData
Definition: artnetcontroller.h:56
Address getAddress() const
Definition: artnetcontroller.h:117
@ Unicast
Artnet data is sent only to compatible nodes that share the same universe and subnet.