13 #ifndef NYMPHCAST_CLIENT_H
14 #define NYMPHCAST_CLIENT_H
22 #include <nymph/nymph.h>
33 enum NymphRemoteStatus {
34 NYMPH_PLAYBACK_STATUS_STOPPED = 1,
35 NYMPH_PLAYBACK_STATUS_PLAYING = 2,
36 NYMPH_PLAYBACK_STATUS_PAUSED = 3
41 NymphRemoteStatus status;
60 typedef std::function<void(std::string appId, std::string message)> AppMessageFunction;
61 typedef std::function<void(uint32_t handle,
NymphPlaybackStatus status)> StatusUpdateFunction;
65 std::string clientId =
"NymphClient_21xb";
68 AppMessageFunction appMessageFunction;
69 StatusUpdateFunction statusUpdateFunction;
71 void MediaReadCallback(uint32_t session, NymphMessage* msg,
void* data);
72 void MediaStopCallback(uint32_t session, NymphMessage* msg,
void* data);
73 void MediaSeekCallback(uint32_t session, NymphMessage* msg,
void* data);
74 void MediaStatusCallback(uint32_t session, NymphMessage* msg,
void* data);
75 void ReceiveFromAppCallback(uint32_t session, NymphMessage* msg,
void* data);
86 std::string
loadResource(uint32_t handle, std::string appId, std::string name);
96 bool addSlaves(uint32_t handle, std::vector<NymphCastRemote> remotes);
97 bool castFile(uint32_t handle, std::string filename);
98 bool castUrl(uint32_t handle, std::string url);
100 uint8_t
volumeSet(uint32_t handle, uint8_t volume);
109 uint8_t
playbackSeek(uint32_t handle, uint64_t location);
110 uint8_t
playbackSeek(uint32_t handle, uint8_t percentage);
Definition: nymphcast_client.h:64
bool castUrl(uint32_t handle, std::string url)
Definition: nymphcast_client.cpp:756
NymphCastClient()
Definition: nymphcast_client.cpp:199
uint8_t playbackStop(uint32_t handle)
Definition: nymphcast_client.cpp:904
uint8_t playbackStart(uint32_t handle)
Definition: nymphcast_client.cpp:875
uint8_t playbackRewind(uint32_t handle)
Definition: nymphcast_client.cpp:962
bool disconnectServer(uint32_t handle)
Definition: nymphcast_client.cpp:502
bool playShare(NymphMediaFile file, std::vector< NymphCastRemote > receivers)
Definition: nymphcast_client.cpp:594
std::vector< NymphCastRemote > findShares()
Definition: nymphcast_client.cpp:400
std::string sendApplicationMessage(uint32_t handle, std::string appId, std::string message)
Definition: nymphcast_client.cpp:286
void setStatusUpdateCallback(StatusUpdateFunction function)
Definition: nymphcast_client.cpp:243
std::vector< NymphCastRemote > findServers()
Definition: nymphcast_client.cpp:360
std::vector< NymphMediaFile > getShares(NymphCastRemote mediaserver)
Definition: nymphcast_client.cpp:535
uint8_t playbackForward(uint32_t handle)
Definition: nymphcast_client.cpp:991
uint8_t volumeDown(uint32_t handle)
Definition: nymphcast_client.cpp:846
std::string getApplicationList(uint32_t handle)
Definition: nymphcast_client.cpp:256
std::string loadResource(uint32_t handle, std::string appId, std::string name)
Definition: nymphcast_client.cpp:319
uint8_t playbackSeek(uint32_t handle, uint64_t location)
Definition: nymphcast_client.cpp:1021
uint8_t volumeSet(uint32_t handle, uint8_t volume)
Definition: nymphcast_client.cpp:787
void setApplicationCallback(AppMessageFunction function)
Definition: nymphcast_client.cpp:232
void setClientId(std::string id)
Definition: nymphcast_client.cpp:221
bool addSlaves(uint32_t handle, std::vector< NymphCastRemote > remotes)
Definition: nymphcast_client.cpp:656
bool castFile(uint32_t handle, std::string filename)
Definition: nymphcast_client.cpp:694
NymphPlaybackStatus playbackStatus(uint32_t handle)
Definition: nymphcast_client.cpp:1092
uint8_t volumeUp(uint32_t handle)
Definition: nymphcast_client.cpp:817
bool connectServer(std::string ip, uint32_t &handle)
Definition: nymphcast_client.cpp:436
uint8_t playbackPause(uint32_t handle)
Definition: nymphcast_client.cpp:933
Definition: nymphcast_client.h:25
Definition: nymphcast_client.h:40