SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM Struct Referencefinal
+ Inheritance diagram for SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM:
+ Collaboration diagram for SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM:

Public Types

typedef std::shared_ptr< SmartFdHadoopJVMPtr
- Public Types inherited from SWC::FS::SmartFd
typedef std::shared_ptr< SmartFdPtr

Public Member Functions

 SmartFdHadoopJVM (const std::string &filepath, uint32_t flags, int32_t fd=-1, uint64_t pos=0)
virtual ~SmartFdHadoopJVM () noexcept
hdfsFile file () noexcept
void file (const hdfsFile &file) noexcept
void use_release () noexcept
bool file_used () const noexcept
hdfsFile invalidate () noexcept
- Public Member Functions inherited from SWC::FS::SmartFd
SWC_CAN_INLINE SmartFd (const std::string &filepath, uint32_t flags, int32_t fd=-1, uint64_t pos=0)
SWC_CAN_INLINE SmartFd (std::string &&filepath, uint32_t flags, int32_t fd=-1, uint64_t pos=0) noexcept
virtual ~SmartFd () noexcept
constexpr SWC_CAN_INLINE const std::string & filepath () const noexcept
constexpr SWC_CAN_INLINE void flags (uint32_t flags) noexcept
constexpr SWC_CAN_INLINE uint32_t flags () const noexcept
constexpr SWC_CAN_INLINE void fd (int32_t fd) noexcept
constexpr SWC_CAN_INLINE int32_t fd () const noexcept
constexpr SWC_CAN_INLINE bool valid () const noexcept
constexpr SWC_CAN_INLINE int32_t invalidate () noexcept
constexpr SWC_CAN_INLINE void pos (uint64_t pos) noexcept
constexpr SWC_CAN_INLINE uint64_t pos () const noexcept
constexpr SWC_CAN_INLINE void forward (uint64_t nbytes) noexcept
std::string to_string () const
void print (std::ostream &out) const

Static Public Member Functions

static Ptr make_ptr (const std::string &filepath, uint32_t flags)
static Ptr make_ptr (SmartFd::Ptr &smart_fd)
- Static Public Member Functions inherited from SWC::FS::SmartFd
static SWC_CAN_INLINE Ptr make_ptr (const std::string &filepath, uint32_t flags, int32_t fd=-1, uint64_t pos=0)
static SWC_CAN_INLINE Ptr make_ptr (std::string &&filepath, uint32_t flags, int32_t fd=-1, uint64_t pos=0)

Private Attributes

std::atomic< hdfsFile > m_hfile
Core::Atomic< size_t > m_use_count

Additional Inherited Members

- Protected Attributes inherited from SWC::FS::SmartFd
const std::string m_filepath

Detailed Description

Definition at line 127 of file FileSystem.h.

Member Typedef Documentation

◆ Ptr

Definition at line 130 of file FileSystem.h.

Constructor & Destructor Documentation

◆ SmartFdHadoopJVM()

SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::SmartFdHadoopJVM ( const std::string &  filepath,
uint32_t  flags,
int32_t  fd = -1,
uint64_t  pos = 0 

Definition at line 73 of file FileSystem.cc.

Referenced by make_ptr().

+ Here is the caller graph for this function:

◆ ~SmartFdHadoopJVM()

SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::~SmartFdHadoopJVM ( )

Definition at line 78 of file FileSystem.cc.

Member Function Documentation

◆ file() [1/2]

hdfsFile SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::file ( )

Definition at line 80 of file FileSystem.cc.

References SWC::LOG_WARN, SWC_FMT_LU, SWC_LOGF, and SWC::FS::FileSystemHadoopJVM::to_string().

+ Here is the call graph for this function:

◆ file() [2/2]

void SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::file ( const hdfsFile &  file)

Definition at line 97 of file FileSystem.cc.

◆ file_used()

bool SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::file_used ( ) const

Definition at line 106 of file FileSystem.cc.

◆ invalidate()

hdfsFile SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::invalidate ( )

Definition at line 110 of file FileSystem.cc.

◆ make_ptr() [1/2]

FileSystemHadoopJVM::SmartFdHadoopJVM::Ptr SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::make_ptr ( const std::string &  filepath,
uint32_t  flags 

Definition at line 60 of file FileSystem.cc.

References SWC::FS::SmartFd::filepath(), SWC::FS::SmartFd::flags(), and SmartFdHadoopJVM().

Referenced by SWC::FS::FileSystemHadoopJVM::get_fd().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_ptr() [2/2]

FileSystemHadoopJVM::SmartFdHadoopJVM::Ptr SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::make_ptr ( SmartFd::Ptr smart_fd)

Definition at line 66 of file FileSystem.cc.

◆ use_release()

void SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::use_release ( )

Definition at line 102 of file FileSystem.cc.

Member Data Documentation

◆ m_hfile

std::atomic<hdfsFile> SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::m_hfile

Definition at line 153 of file FileSystem.h.

◆ m_use_count

Core::Atomic<size_t> SWC::FS::FileSystemHadoopJVM::SmartFdHadoopJVM::m_use_count

Definition at line 154 of file FileSystem.h.

The documentation for this struct was generated from the following files: