33 lines
868 B
C++
33 lines
868 B
C++
#include <framework/serviceinterface/ServiceInterfaceStream.h>
|
|
|
|
ServiceInterfaceStream::ServiceInterfaceStream(std::string setMessage,
|
|
bool addCrToPreamble, bool buffered, bool errStream, uint16_t port) :
|
|
std::ostream(&streambuf),
|
|
streambuf(setMessage, addCrToPreamble, buffered, errStream, port) {}
|
|
|
|
void ServiceInterfaceStream::setActive( bool myActive) {
|
|
this->streambuf.isActive = myActive;
|
|
}
|
|
|
|
std::string* ServiceInterfaceStream::getPreamble() {
|
|
return streambuf.getPreamble();
|
|
}
|
|
|
|
void ServiceInterfaceStream::print(std::string error,
|
|
bool withPreamble, bool withNewline, bool flush) {
|
|
if(not streambuf.isBuffered() and withPreamble) {
|
|
*this << getPreamble() << error;
|
|
}
|
|
else {
|
|
*this << error;
|
|
}
|
|
|
|
if(withNewline) {
|
|
*this << "\n";
|
|
}
|
|
// if mode is non-buffered, no need to flush.
|
|
if(flush and streambuf.isBuffered()) {
|
|
this->flush();
|
|
}
|
|
}
|