Faspstream Manager C/C++ API  3.6.1
A C and C++ language interface to basic streaming over the fasp protocol
FaspOutputStream.h
Go to the documentation of this file.
1 /*
2  * Aspera, Inc.
3  *
4  * C++ Only.
5  *
6  * FaspOutputStream class.
7  */
8 #pragma once
9 
10 #include <string>
11 #include <vector>
12 
13 #include <Poco/Thread.h>
14 #include <Poco/RunnableAdapter.h>
15 #include <Poco/Process.h>
16 #include <Poco/SharedPtr.h>
17 #include <Poco/PipeStream.h>
18 
19 #include "Constants.h"
20 
21 #ifdef WIN32
22 
23 #ifdef FASPSTREAM_CPP_EXPORTS
24 #define FASPSTREAM_CPP_API __declspec(dllexport)
25 #else
26 #define FASPSTREAM_CPP_API __declspec(dllimport)
27 #endif
28 
29 #else // NOT WIN32
30 #define FASPSTREAM_CPP_API
31 #endif
32 
39 {
40 public:
46  FASPSTREAM_CPP_API FaspOutputStream(const Poco::Pipe &inPipe, Poco::SharedPtr<Poco::ProcessHandle> ph);
64  FASPSTREAM_CPP_API void write(const char* buffer, int length);
71 
72 private:
73  Poco::Pipe _inPipe;
74  Poco::SharedPtr<Poco::ProcessHandle> _ph;
75 };
FASPSTREAM_CPP_API void write(const char *buffer, int length)
Definition: FaspOutputStream.h:38
FASPSTREAM_CPP_API void close()
FASPSTREAM_CPP_API void abort()
FASPSTREAM_CPP_API void cleanup()
FASPSTREAM_CPP_API FaspOutputStream(const Poco::Pipe &inPipe, Poco::SharedPtr< Poco::ProcessHandle > ph)
#define FASPSTREAM_CPP_API
Definition: FaspOutputStream.h:30