25 #ifndef SRC_XRDZIP_XRDZIPUTILS_HH_
26 #define SRC_XRDZIP_XRDZIPUTILS_HH_
45 template<
typename UINT>
59 template<
typename INT>
62 const char *begin =
reinterpret_cast<const char*
>( &value );
63 const char *end = begin +
sizeof( INT );
64 std::copy( begin, end, std::back_inserter( buffer ) );
71 template<
typename INT>
72 inline static void from_buffer( INT &var,
const char *&buffer )
74 memcpy( &var, buffer,
sizeof( INT ) );
75 buffer +=
sizeof( INT );
81 template<
typename INT>
82 inline static INT
to(
const char *buffer )
85 memcpy( &value, buffer,
sizeof( INT) );
99 const std::time_t now = std::time(
nullptr );
100 const std::tm calendar_time = *std::localtime( std::addressof( now ) );
116 const std::tm calendar_time = *std::localtime( std::addressof( timestmp ) );
static const uint8_t year_shift
Definition: XrdZipUtils.hh:151
std::vector< char > buffer_t
Definition: XrdZipUtils.hh:54
uint16_t time
Definition: XrdZipUtils.hh:130
static void copy_bytes(const INT value, buffer_t &buffer)
Definition: XrdZipUtils.hh:60
static const uint16_t year_mask
Definition: XrdZipUtils.hh:147
dos_timestmp(time_t timestmp)
Definition: XrdZipUtils.hh:114
static const uint8_t mon_shift
Definition: XrdZipUtils.hh:150
static const uint8_t hour_shift
Definition: XrdZipUtils.hh:138
static const uint8_t day_shift
Definition: XrdZipUtils.hh:149
static const uint16_t day_mask
Definition: XrdZipUtils.hh:145
static INT to(const char *buffer)
Definition: XrdZipUtils.hh:82
dos_timestmp()
Definition: XrdZipUtils.hh:97
static const uint16_t sec_mask
Definition: XrdZipUtils.hh:132
Definition: XrdZipUtils.hh:46
static const uint16_t mon_mask
Definition: XrdZipUtils.hh:146
Definition: XrdZipUtils.hh:40
Definition: XrdZipUtils.hh:92
static const uint8_t min_shift
Definition: XrdZipUtils.hh:137
static const uint16_t hour_mask
Definition: XrdZipUtils.hh:134
uint16_t date
Definition: XrdZipUtils.hh:143
static void from_buffer(INT &var, const char *&buffer)
Definition: XrdZipUtils.hh:72
static const UINT value
Definition: XrdZipUtils.hh:48
static const uint16_t min_mask
Definition: XrdZipUtils.hh:133
static const uint8_t sec_shift
Definition: XrdZipUtils.hh:136