v2.0.0
Loading...
Searching...
No Matches
lsl_stream_outlet.h
Go to the documentation of this file.
1//=============================================================================================================
30
31#ifndef LSL_STREAM_OUTLET_H
32#define LSL_STREAM_OUTLET_H
33
34//=============================================================================================================
35// INCLUDES
36//=============================================================================================================
37
38#include "lsl_global.h"
39#include "lsl_stream_info.h"
40
41//=============================================================================================================
42// STL INCLUDES
43//=============================================================================================================
44
45#include <vector>
46#include <memory>
47
48//=============================================================================================================
49// DEFINE NAMESPACE LSLLIB
50//=============================================================================================================
51
52namespace LSLLIB
53{
54
55//=============================================================================================================
56// FORWARD DECLARATIONS
57//=============================================================================================================
58
63
64//=============================================================================================================
71{
72public:
73 //=========================================================================================================
81 explicit stream_outlet(const stream_info& info);
82
83 //=========================================================================================================
88
89 //=========================================================================================================
95 void push_sample(const std::vector<float>& sample);
96
97 //=========================================================================================================
103 void push_chunk(const std::vector<std::vector<float>>& chunk);
104
105 //=========================================================================================================
111 [[nodiscard]] stream_info info() const;
112
113 //=========================================================================================================
119 [[nodiscard]] bool have_consumers() const;
120
121private:
123 std::unique_ptr<StreamOutletPrivate> m_pImpl;
124};
125
126} // namespace LSLLIB
127
128#endif // LSL_STREAM_OUTLET_H
Declares stream_info, the LSL metadata descriptor that identifies and routes a stream on the network.
LSLLIB shared-library export macro and build-stamp accessors used by every public LSL symbol.
#define LSLSHARED_EXPORT
Definition lsl_global.h:51
Lab Streaming Layer (LSL) integration for real-time data exchange.
Value-type descriptor of a single LSL stream: semantic metadata plus transport endpoint,...
void push_sample(const std::vector< float > &sample)
stream_outlet(const stream_info &info)
void push_chunk(const std::vector< std::vector< float > > &chunk)
stream_info info() const