19 #include <Poco/Thread.h>
20 #include <Poco/Process.h>
21 #include <Poco/SharedPtr.h>
31 #ifdef FASPSTREAM_CPP_EXPORTS
32 #define FASPSTREAM_CPP_API __declspec(dllexport)
34 #define FASPSTREAM_CPP_API __declspec(dllimport)
38 #define FASPSTREAM_CPP_API
192 Poco::SharedPtr<Poco::ProcessHandle> _ph;
202 std::string _hostname;
213 std::string _faspstreamPath;
214 std::string _errorString;
215 bool _subprocessDied;
216 int _forceSendMilliseconds;
218 std::string _sshUser;
219 std::string _privateKeyFile;
220 std::string _commandToExecute;
221 std::string _logDirectory;
223 std::string _license;
228 Poco::Thread* _thread;
231 void invoke_faspstream();
232 void startChannelSocketListener();
233 void check_faspstream();
236 void log(std::string logEntry);
FASPSTREAM_CPP_API FaspStreamClient(const std::string &appId, FaspConnectionChannel *channel=NULL)
FASPSTREAM_CPP_API void setSSHUser(const std::string &sshUser)
FASPSTREAM_CPP_API FASPSTREAM_TRANSFER_MODE_TYPE getTransferMode() const
FASPSTREAM_CPP_API void setLockTarget(bool target)
FASPSTREAM_CPP_API FASPSTREAM_CIPHER_TYPE getCipherType() const
FASPSTREAM_CPP_API const std::string & getPrivateKeyFile() const
Definition: FaspOutputStream.h:38
FASPSTREAM_CPP_API void setHostname(const std::string &name)
FASPSTREAM_CPP_API void setChunkSize(int size)
FASPSTREAM_CPP_API int getRateMinimum() const
FASPSTREAM_CPP_API int getDatagramSize() const
FASPSTREAM_CPP_API void setLockMinimum(bool lockMin)
FASPSTREAM_CPP_API const std::string & getCommandToExecute() const
Definition: FaspStreamClient.h:47
FASPSTREAM_CPP_API void setAggressiveness(int aggressive)
FASPSTREAM_POLICY_TYPE
Definition: fasp_stream_constants.h:25
FASPSTREAM_CPP_API void setLockPolicy(bool lock)
FASPSTREAM_CPP_API FaspOutputStream & getFaspOutputStream()
FASPSTREAM_CPP_API void setLicense(std::string commandToExecute)
FASPSTREAM_CPP_API void setMaxMemory(int maxMem)
FASPSTREAM_CPP_API bool isLockPolicy() const
FASPSTREAM_CPP_API ~FaspStreamClient()
FASPSTREAM_CPP_API const std::string & getSSHUser() const
FASPSTREAM_CPP_API const std::string & getLogDirectory() const
FASPSTREAM_CPP_API int getRateTarget() const
#define FASPSTREAM_CPP_API
Definition: FaspStreamClient.h:38
FASPSTREAM_CPP_API void setLogDirectory(const std::string &logDirectory)
FASPSTREAM_CPP_API const std::string & getHostname() const
Definition: ChannelHandler.h:16
FASPSTREAM_CPP_API void setRateMinimum(int minimum)
FASPSTREAM_CPP_API int getMaxMemory() const
FASPSTREAM_CPP_API int getUdpPort() const
FASPSTREAM_CPP_API int getAggressiveness() const
FASPSTREAM_CPP_API int getForceSendMilliseconds() const
FASPSTREAM_CPP_API bool isLockMinimum() const
FASPSTREAM_CPP_API void setTransferMode(FASPSTREAM_TRANSFER_MODE_TYPE transferMode)
FASPSTREAM_CPP_API std::string getLicense() const
FASPSTREAM_CPP_API void setPrivateKeyFile(const std::string &privateKeyFile)
FASPSTREAM_TRANSFER_MODE_TYPE
Definition: fasp_stream_constants.h:46
Definition: FaspConnectionChannel.h:33
FASPSTREAM_CIPHER_TYPE
Definition: fasp_stream_constants.h:37
FASPSTREAM_CPP_API bool connect(const std::string &host)
FASPSTREAM_CPP_API void setRateTarget(int target)
FASPSTREAM_CPP_API const std::string & getFaspstreamPath() const
FASPSTREAM_CPP_API bool isLockTarget() const
FASPSTREAM_CPP_API FASPSTREAM_POLICY_TYPE getPolicy() const
FASPSTREAM_CPP_API int getPort() const
FASPSTREAM_CPP_API void setForceSendMilliseconds(int milliseconds)
FASPSTREAM_CPP_API void setUdpPort(int port)
FASPSTREAM_CPP_API void cleanup()
void(* log_callback_f)(char const *s)
Definition: fasp_stream_constants.h:67
FASPSTREAM_CPP_API std::vector< std::string > getCommandline() const
FASPSTREAM_CPP_API void setDatagramSize(int size)
FASPSTREAM_CPP_API void setFaspstreamPath(const std::string &path)
FASPSTREAM_CPP_API FaspInputStream & getFaspInputStream()
FASPSTREAM_CPP_API void setCipherType(FASPSTREAM_CIPHER_TYPE type)
FASPSTREAM_CPP_API void setPort(int tcpPort)
FASPSTREAM_CPP_API int getChunkSize() const
FASPSTREAM_CPP_API const std::string & getUsername() const
void registerLogCallback(log_callback_f log_function)
FASPSTREAM_CPP_API void setPolicy(FASPSTREAM_POLICY_TYPE newPolicy)
FASPSTREAM_CPP_API void setCommandToExecute(const std::string &commandToExecute)