Quick Links:

bal | bbl | bdl | bsl

Public Types | Static Public Member Functions | Static Public Attributes

bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE > Struct Template Reference

#include <bdls_filesystemutil_windowsimputil.h>

List of all members.

Public Types

typedef WINDOWS_INTERFACE::HANDLE FileDescriptor
typedef WINDOWS_INTERFACE::INT64 Offset

Static Public Member Functions

static int convertFileTimeToDatetime (bdlt::Datetime *time, const LPFILETIME lpFileTime)
static Offset getFileSize (FileDescriptor descriptor)
static int getLastModificationTime (bdlt::Datetime *time, FileDescriptor descriptor)

Static Public Attributes

static const bsls::Types::Int64 k_NANOSECONDS_PER_WINDOWS_TICK = 100
static const bsls::Types::Int64 k_WINDOWS_TICKS_PER_MICROSECOND

Detailed Description

template<class WINDOWS_INTERFACE>
struct bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >

This component-private utility struct provides a namespace for a suite of functions that FilesystemUtil uses as implementation details. These functions have a WINDOWS_INTERFACE template parameter, which provides access to the entities that Windows systems declare, and that the function implementations need.

The program is ill-formed unless the specified WINDOWS_INTERFACE is a class type that meets the following requirements:

See Component bdls_filesystemutil_windowsimputil


Member Typedef Documentation

template<class WINDOWS_INTERFACE >
typedef WINDOWS_INTERFACE::HANDLE bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::FileDescriptor
template<class WINDOWS_INTERFACE >
typedef WINDOWS_INTERFACE::INT64 bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::Offset

Member Function Documentation

template<class WINDOWS_INTERFACE >
static int bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::convertFileTimeToDatetime ( bdlt::Datetime time,
const LPFILETIME  lpFileTime 
) [static]

Load into the specified time the time in the specified lpFileTime. Return 0 on success, and a non-zero value otherwise. Note that the time is reported in UTC.

template<class WINDOWS_INTERFACE >
static Offset bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::getFileSize ( FileDescriptor  descriptor  )  [static]

Return the size, in bytes, of the file with the specified descriptor, or a negative value if an error occurs.

template<class WINDOWS_INTERFACE >
static int bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::getLastModificationTime ( bdlt::Datetime time,
FileDescriptor  descriptor 
) [static]

Load into the specified time the last modification time of the file with the specified descriptor, as reported by the filesystem. Return 0 on success, and a non-zero value otherwise. Note that the time is reported in UTC.


Member Data Documentation

template<class WINDOWS_INTERFACE >
const bsls::Types::Int64 bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::k_NANOSECONDS_PER_WINDOWS_TICK = 100 [static]
template<class WINDOWS_INTERFACE >
const bsls::Types::Int64 bdls::FilesystemUtil_WindowsImpUtil< WINDOWS_INTERFACE >::k_WINDOWS_TICKS_PER_MICROSECOND [static]

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