21 #ifndef STREAM_WRITER_H 22 #define STREAM_WRITER_H 24 #include "StreamHttpParser.h" 25 #include "Interfaces/RawSoundReceiver/RawSoundReceiverInterface.h" 26 #include "Utils/Pimpl.h" 48 void sig_new_connection(
const QString& ip);
53 enum class Type : uint8_t
144 void socket_disconnected();
145 void data_available();
148 using StreamWriterPtr=std::shared_ptr<StreamWriter>;
The StreamWriter class. This class is the interface between StreamDataSender and StreamServer. It watches the client socket and spreads data to its client.
Definition: StreamWriter.h:39
StreamWriter(QTcpSocket *socket, const QString &ip, const MetaData &md)
StreamWriter.
QString get_ip() const
get client ip address
The StreamDataSender class. This class is used for sending the raw bytes.
Definition: StreamDataSender.h:32
void new_audio_data(const Byte *data, uint64_t size) override
new audio data has arrived and has to be forwarded to the socket
bool send_playlist()
Send a m3u playlist (see StreamDataSender)
void dismiss()
stop sending sound over the client socket
void disconnect()
disconnect a client socket
The RawSoundReceiver interface.
Definition: RawSoundReceiverInterface.h:30
bool send_html5()
send a html5 website (see StreamDataSender)
void change_track(const MetaData &md)
send new icy data to clients, and send new metadata to remote controls.
bool send_header(bool reject)
send a appropriate header based on the type of request (see StreamDataSender)
bool send_bg()
Send website background (see StreamDataSender)
HttpAnswer
The HttpAnswer enum.
Definition: StreamHttpParser.h:38
bool send_favicon()
Send the http favicon (see StreamDataSender)
bool send_metadata()
Send track information (see StreamDataSender)