Go to the documentation of this file. 1 #ifndef _OME_FILE_DESCRIPTOR_H
2 #define _OME_FILE_DESCRIPTOR_H "$Id: OMEfileDescriptor.h 357 2020-06-18 23:13:25Z geoff $"
15 int *errRC =
nullptr);
27 virtual int readBytes(
unsigned char *bfr,
size_t bytes,
size_t *actualBytes,
int *errRet)
override;
29 virtual int writeBytes(
const unsigned char *bfr,
size_t bytes,
size_t *actualBytes,
int *errRet)
override;
33 size_t *actualBytes,
int *errRet,
size_t skipBytes = 0)
override;
43 virtual int close(
int mask)
override;
bool(* OMEeventCallbackFP)(class OMEevent *, OMEthread *)
Definition: OMEevent.h:16
bool fileIsOpen
Definition: OMEfileDescriptor.h:18
~OMEfileDescriptor()
Definition: OMEfileDescriptor.cpp:255
OME_DLL_EXPORT void INIT_DECLARE_file()
Definition: OMEfileDescriptor.cpp:539
virtual int seekToOffset(size_t offset) override
Definition: OMEfileDescriptor.cpp:519
@ mustExist
Definition: OMEioObjects.h:30
@ selectRead
Definition: OMEioEvents.h:21
@ write
Definition: OMEioObjects.h:28
@ read
Definition: OMEioObjects.h:28
@ selectWrite
Definition: OMEioEvents.h:21
@ file
Definition: OMEioEvents.h:20
@ truncate
Definition: OMEioObjects.h:30
Implements text and binary string storage.
Definition: OMEstring.h:305
static OMEioDescriptor * openFileScheme(const OMEstring &url, int *errRet=nullptr)
Definition: OMEfileDescriptor.cpp:178
#define EAGAIN
Definition: tmp.o.cpp:64
I/O-specific event.
Definition: OMEioEvents.h:16
virtual int writeBytes(const unsigned char *bfr, size_t bytes, size_t *actualBytes, int *errRet) override
Definition: OMEfileDescriptor.cpp:354
#define INVALID_HANDLE_VALUE
Definition: poll_monitor.hpp:19
virtual int close(int mask) override
Definition: OMEfileDescriptor.cpp:512
virtual OMEevent * selectForRead(OMEeventCallbackFP func, OMEthread *t=nullptr) override
Definition: OMEfileDescriptor.cpp:480
const char srcID[]
Definition: catSym.c:17
static OMEioDescriptor * openFile(const char *name, uint32_t openMode, int *errRC=nullptr)
Definition: OMEfileDescriptor.cpp:122
virtual OMEioDescriptor * acceptConnection(int *errRet) override
Definition: OMEfileDescriptor.cpp:527
virtual OMEevent * selectForWrite(OMEeventCallbackFP func, OMEthread *t=nullptr) override
Definition: OMEfileDescriptor.cpp:501
OMEfileType
Definition: OMEioEvents.h:20
#define NULL
Definition: tmp.o.cpp:327
OMEstring localName
Definition: OMEfileDescriptor.h:17
@ create
Definition: OMEioObjects.h:29
uint_fast16_t adjustVector(OMEioVector *result, uint_fast16_t count, const OMEioVector *v, size_t skipCount)
Definition: OMEioObjects.cpp:121
Equivalent of iov structure.
Definition: OMEioObjects.h:18
Filesystem-specific I/O descriptor.
Definition: OMEfileDescriptor.h:12
virtual OMEstring * getLocalAddress() const override
Definition: OMEfileDescriptor.cpp:533
size_t length() const
Definition: OMEstring.h:401
const char srcID[] OME_USED
Definition: tick_time.cpp:24
#define SEEK_SET
Definition: tmp.o.cpp:506
@ append
Definition: OMEioObjects.h:31
uint64_t ioHandle
Definition: OMEioObjects.h:36
int errno
Definition: ethers.c:41
Base class for events within the FARGOS/VISTA Object Management Environment.
Definition: OMEevent.h:22
int elementCount(OMEthread *thread, OMEtype &result, const OMEtype &arg)
Definition: OILtypeFuncs.cpp:168
OME debug and profiling interfaces.
#define OME_DLL_EXPORT
Definition: compiler_hints.h:464
Public interface to an OME thread.
Definition: OMEthread.h:60
#define LOG_ENDLINE
Closing clause for text line output using << operators.
Definition: logging_api.hpp:2956
int OMEregisterIOscheme(const OMEstring &prefix, OMEopenSchemeFP func)
Register support for new I/O transport scheme.
Definition: OMEioObjects.cpp:219
OMEfileDescriptor(uint64_t handle, OMEioEvent::OMEfileType type, const OMEstring *fileName)
Definition: OMEfileDescriptor.cpp:242
virtual int writeVectorOfBytes(const OMEioVector *v, uint_fast16_t elementCount, size_t *actualBytes, int *errRet, size_t skipBytes=0) override
Definition: OMEfileDescriptor.cpp:385
Base class for open files and sockets.
Definition: OMEioObjects.h:26
virtual bool isOpen() const override
Definition: OMEfileDescriptor.h:47
#define MAX_IO_VECTORS
Definition: OMEfileDescriptor.cpp:31
virtual int readBytes(unsigned char *bfr, size_t bytes, size_t *actualBytes, int *errRet) override
Definition: OMEfileDescriptor.cpp:294
#define LOG_CERR(lvl)
Convenience macro that uses LOG_INTO() to conditionally log a message to standard error.
Definition: logging_api.hpp:3014