Boolean FileReader::Close() { Boolean InCloseOK_, OutCloseOK_; if (SharedBuffer()) return (((filebuf*)ios::rdbuf())->close() != 0); InCloseOK_ = GetInBuffer()->close() != 0; OutCloseOK_ = GetOutBuffer()->close() != 0; return (InCloseOK_ && OutCloseOK_); }
Boolean FileReader::Open(const char* Fname_, int Mode_) { if (SharedBuffer()) { if ((Mode_ & ios::out) || (Mode_ & ios::app)) return OpenOut(Fname_, Mode_); else if (Mode_ & ios::in) return OpenIn(Fname_, Mode_); } else { Boolean OpenOK_ = TRUE; if ((Mode_ & ios::out) || (Mode_ & ios::app)) OpenOK_ = OpenOut(Fname_, Mode_); if (Mode_ & ios::in) OpenOK_ = OpenOK_ && OpenIn(Fname_, Mode_); return OpenOK_; } return FALSE; }
void BoostConnection::doWrite(const ByteArray& data) { boost::asio::async_write(socket_, SharedBuffer(data), boost::bind(&BoostConnection::handleDataWritten, shared_from_this(), boost::asio::placeholders::error)); }