w11 - cpp 0.794
Backend server for Rlink and w11
|
FIXME_docs. More...
#include <Rw11VirtTape.hpp>
Public Types | |
enum | stats { kStatNVTReadRec = Rw11Virt::kDimStat , kStatNVTReadByt , kStatNVTReadEof , kStatNVTReadEom , kStatNVTReadPErr , kStatNVTReadLErr , kStatNVTWriteRec , kStatNVTWriteByt , kStatNVTWriteEof , kStatNVTSpaForw , kStatNVTSpaBack , kStatNVTRewind , kDimStat } |
enum | OpCode { kOpCodeOK = 0 , kOpCodeBot , kOpCodeEof , kOpCodeEom , kOpCodeRecLenErr , kOpCodeBadParity , kOpCodeBadFormat } |
Public Types inherited from Retro::Rw11Virt | |
enum | stats { kDimStat = 0 } |
Public Member Functions | |
Rw11VirtTape (Rw11Unit *punit) | |
Default constructor. | |
void | SetCapacity (size_t nbyte) |
FIXME_docs. | |
size_t | Capacity () const |
FIXME_docs. | |
virtual bool | ReadRecord (size_t nbyte, uint8_t *data, size_t &ndone, int &opcode, RerrMsg &emsg)=0 |
virtual bool | WriteRecord (size_t nbyte, const uint8_t *data, int &opcode, RerrMsg &emsg)=0 |
virtual bool | WriteEof (RerrMsg &emsg)=0 |
virtual bool | SpaceForw (size_t nrec, size_t &ndone, int &opcode, RerrMsg &emsg)=0 |
virtual bool | SpaceBack (size_t nrec, size_t &ndone, int &opcode, RerrMsg &emsg)=0 |
virtual bool | Rewind (int &opcode, RerrMsg &emsg)=0 |
void | SetPosFile (int posfile) |
FIXME_docs. | |
void | SetPosRecord (int posrec) |
FIXME_docs. | |
bool | Bot () const |
FIXME_docs. | |
bool | Eot () const |
FIXME_docs. | |
bool | Eom () const |
FIXME_docs. | |
int | PosFile () const |
FIXME_docs. | |
int | PosRecord () const |
FIXME_docs. | |
virtual void | Dump (std::ostream &os, int ind=0, const char *text=0, int detail=0) const |
FIXME_docs. | |
Public Member Functions inherited from Retro::Rw11Virt | |
Rw11Virt (Rw11Unit *punit) | |
Default constructor. | |
virtual | ~Rw11Virt () |
Destructor. | |
Rw11Virt (const Rw11Virt &)=delete | |
Rw11Virt & | operator= (const Rw11Virt &)=delete |
Rw11Unit & | Unit () const |
FIXME_docs. | |
Rw11Cntl & | Cntl () const |
FIXME_docs. | |
Rw11Cpu & | Cpu () const |
FIXME_docs. | |
Rw11 & | W11 () const |
FIXME_docs. | |
RlinkServer & | Server () const |
FIXME_docs. | |
RlogFile & | LogFile () const |
FIXME_docs. | |
virtual bool | WProt () const |
FIXME_docs. | |
const RparseUrl & | Url () const |
FIXME_docs. | |
virtual bool | Open (const std::string &url, RerrMsg &emsg)=0 |
Rstats & | Stats () |
FIXME_docs. | |
virtual void | Dump (std::ostream &os, int ind=0, const char *text=0, int detail=0) const |
FIXME_docs. | |
Static Public Member Functions | |
static std::unique_ptr< Rw11VirtTape > | New (const std::string &url, Rw11Unit *punit, RerrMsg &emsg) |
FIXME_docs. | |
Protected Attributes | |
size_t | fCapacity |
capacity in byte (0=unlimited) | |
bool | fBot |
tape at bot | |
bool | fEot |
tape beyond eot | |
bool | fEom |
tape beyond medium | |
int | fPosFile |
tape pos: #files (-1=unknown) | |
int | fPosRecord |
tape pos: #record (-1=unknown) | |
Protected Attributes inherited from Retro::Rw11Virt | |
Rw11Unit * | fpUnit |
back ref to unit | |
RparseUrl | fUrl |
bool | fWProt |
write protected | |
Rstats | fStats |
statistics | |
FIXME_docs.
Definition at line 29 of file Rw11VirtTape.hpp.
Definition at line 64 of file Rw11VirtTape.hpp.
Definition at line 81 of file Rw11VirtTape.hpp.
|
explicit |
Default constructor.
Definition at line 42 of file Rw11VirtTape.cpp.
References Retro::Rstats::Define(), Retro::Rw11Virt::fStats, kStatNVTReadByt, kStatNVTReadEof, kStatNVTReadEom, kStatNVTReadLErr, kStatNVTReadPErr, kStatNVTReadRec, kStatNVTRewind, kStatNVTSpaBack, kStatNVTSpaForw, kStatNVTWriteByt, kStatNVTWriteEof, and kStatNVTWriteRec.
|
inline |
|
inline |
FIXME_docs.
Definition at line 31 of file Rw11VirtTape.ipp.
References fCapacity.
Referenced by Retro::Rw11UnitTape::Capacity().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by Retro::Rw11UnitTape::VirtReadRecord().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by Retro::Rw11UnitTape::VirtWriteRecord().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by Retro::Rw11UnitTape::VirtWriteEof().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by SetPosFile(), SetPosRecord(), and Retro::Rw11UnitTape::VirtSpaceForw().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by SetPosRecord(), and Retro::Rw11UnitTape::VirtSpaceBack().
|
pure virtual |
Implemented in Retro::Rw11VirtTapeTap.
Referenced by SetPosFile(), and Retro::Rw11UnitTape::VirtRewind().
void Retro::Rw11VirtTape::SetPosFile | ( | int | posfile | ) |
FIXME_docs.
Definition at line 89 of file Rw11VirtTape.cpp.
References fPosFile, kOpCodeEom, Rewind(), SpaceForw(), and Retro::RerrMsg::Text().
Referenced by Retro::Rw11UnitTape::SetPosFile().
void Retro::Rw11VirtTape::SetPosRecord | ( | int | posrec | ) |
FIXME_docs.
Definition at line 111 of file Rw11VirtTape.cpp.
References fPosRecord, kOpCodeEof, SpaceBack(), SpaceForw(), and Retro::RerrMsg::Text().
Referenced by Retro::Rw11UnitTape::SetPosRecord().
|
inline |
FIXME_docs.
Definition at line 39 of file Rw11VirtTape.ipp.
References fBot.
Referenced by Retro::Rw11CntlTM11::AddFastExit(), Retro::Rw11CntlTM11::AddNormalExit(), Retro::Rw11UnitTape::Bot(), and Retro::Rw11CntlTM11::UnitSetup().
|
inline |
FIXME_docs.
Definition at line 47 of file Rw11VirtTape.ipp.
References fEot.
Referenced by Retro::Rw11CntlTM11::AddFastExit(), Retro::Rw11CntlTM11::AddNormalExit(), and Retro::Rw11UnitTape::Eot().
|
inline |
FIXME_docs.
Definition at line 55 of file Rw11VirtTape.ipp.
References fEom.
Referenced by Retro::Rw11UnitTape::Eom().
|
inline |
FIXME_docs.
Definition at line 63 of file Rw11VirtTape.ipp.
References fPosFile.
Referenced by Retro::Rw11UnitTape::PosFile().
|
inline |
FIXME_docs.
Definition at line 71 of file Rw11VirtTape.ipp.
References fPosRecord.
Referenced by Retro::Rw11UnitTape::PosRecord().
|
virtual |
FIXME_docs.
Reimplemented from Retro::Rw11Virt.
Reimplemented in Retro::Rw11VirtTapeTap.
Definition at line 143 of file Rw11VirtTape.cpp.
References Retro::Rw11Virt::Dump(), fBot, fCapacity, fEom, fEot, fPosFile, fPosRecord, and Retro::RosPrintf().
Referenced by Retro::Rw11VirtTapeTap::Dump().
|
static |
FIXME_docs.
Definition at line 68 of file Rw11VirtTape.cpp.
References Retro::RparseUrl::FindScheme(), and Retro::RerrMsg::Init().
|
protected |
capacity in byte (0=unlimited)
Definition at line 92 of file Rw11VirtTape.hpp.
Referenced by Capacity(), Dump(), Retro::Rw11VirtTapeTap::Open(), SetCapacity(), and Retro::Rw11VirtTapeTap::UpdatePos().
|
protected |
tape at bot
Definition at line 93 of file Rw11VirtTape.hpp.
Referenced by Bot(), Dump(), Retro::Rw11VirtTapeTap::Open(), Retro::Rw11VirtTapeTap::Rewind(), and Retro::Rw11VirtTapeTap::UpdatePos().
|
protected |
tape beyond eot
Definition at line 94 of file Rw11VirtTape.hpp.
Referenced by Dump(), Eot(), Retro::Rw11VirtTapeTap::Open(), Retro::Rw11VirtTapeTap::Rewind(), and Retro::Rw11VirtTapeTap::UpdatePos().
|
protected |
tape beyond medium
Definition at line 95 of file Rw11VirtTape.hpp.
Referenced by Dump(), Eom(), Retro::Rw11VirtTapeTap::Open(), Retro::Rw11VirtTapeTap::ReadRecord(), Retro::Rw11VirtTapeTap::Rewind(), Retro::Rw11VirtTapeTap::SpaceBack(), Retro::Rw11VirtTapeTap::SpaceForw(), Retro::Rw11VirtTapeTap::WriteEof(), and Retro::Rw11VirtTapeTap::WriteRecord().
|
protected |
tape pos: #files (-1=unknown)
Definition at line 96 of file Rw11VirtTape.hpp.
Referenced by Dump(), Retro::Rw11VirtTapeTap::Open(), PosFile(), Retro::Rw11VirtTapeTap::ReadRecord(), Retro::Rw11VirtTapeTap::Rewind(), SetPosFile(), Retro::Rw11VirtTapeTap::SpaceBack(), Retro::Rw11VirtTapeTap::SpaceForw(), and Retro::Rw11VirtTapeTap::WriteEof().
|
protected |
tape pos: #record (-1=unknown)
Definition at line 97 of file Rw11VirtTape.hpp.
Referenced by Dump(), Retro::Rw11VirtTapeTap::IncPosRecord(), Retro::Rw11VirtTapeTap::Open(), PosRecord(), Retro::Rw11VirtTapeTap::ReadRecord(), Retro::Rw11VirtTapeTap::Rewind(), SetPosRecord(), Retro::Rw11VirtTapeTap::SpaceBack(), Retro::Rw11VirtTapeTap::SpaceForw(), and Retro::Rw11VirtTapeTap::WriteEof().