Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #include <saga/saga/job.hpp>
00007 #include <saga/saga/adaptors/task.hpp>
00008 #include <saga/impl/job.hpp>
00009 #include <saga/impl/packages/job/job_runtime.hpp>
00010
00012 namespace saga { namespace job
00013 {
00014 istream::istream(saga::impl::istream_interface *impl)
00015 : std::ios(0), base_type(impl->get_streambuf()), impl_(impl)
00016 {
00017 }
00018
00019 istream::istream(istream const& rhs)
00020 : std::ios(0), base_type(rhs.rdbuf()), impl_(rhs.impl_)
00021 {
00022 this->copyfmt(rhs);
00023 this->clear(rhs.rdstate());
00024 }
00025
00026 istream::istream()
00027 : std::ios(0), base_type(0)
00028 {
00029 this->clear(std::ios::eofbit);
00030 }
00031
00032 istream& istream::operator=(istream const& rhs)
00033 {
00034 if (this != &rhs) {
00035 this->copyfmt(rhs);
00036 this->clear(rhs.rdstate());
00037 this->std::basic_ios<char>::rdbuf(rhs.rdbuf());
00038 impl_ = rhs.impl_;
00039 }
00040 return *this;
00041 }
00042
00044 namespace detail
00045 {
00046 handle_type get_handle(saga::job::istream const& istrm, bool detach)
00047 {
00048 return saga::impl::job_runtime::get_handle(istrm, detach);
00049 }
00050 }
00051
00053 }}
00054