Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shamalgs::SerializeHelper Class Reference

Public Member Functions

std::shared_ptr< sham::DeviceScheduler > & get_device_scheduler ()
 SerializeHelper (std::shared_ptr< sham::DeviceScheduler > dev_sched)
 SerializeHelper (std::shared_ptr< sham::DeviceScheduler > dev_sched, sham::DeviceBuffer< u8 > &&storage, bool allow_large_int_size=false)
void allocate (SerializeSize szinfo, bool allow_large_int_size=false)
sham::DeviceBuffer< u8finalize ()
template<class T>
void write (T val)
template<class T>
void load (T &val)
void write (std::string s)
void load (std::string &s)
template<class T>
void write_buf (sycl::buffer< T > &buf, u64 len)
template<class T>
void load_buf (sycl::buffer< T > &buf, u64 len)
template<class T>
void write_buf (sham::DeviceBuffer< T > &buf, u64 len)
template<class T>
void load_buf (sham::DeviceBuffer< T > &buf, u64 len)

Static Public Member Functions

template<class T>
static SerializeSize serialize_byte_size ()
template<class T>
static SerializeSize serialize_byte_size (u64 len)
static SerializeSize serialize_byte_size (std::string s)

Detailed Description

Definition at line 130 of file serialize.hpp.

Constructor & Destructor Documentation

◆ SerializeHelper() [1/2]

shamalgs::SerializeHelper::SerializeHelper ( std::shared_ptr< sham::DeviceScheduler > dev_sched)

Definition at line 178 of file serialize.cpp.

◆ SerializeHelper() [2/2]

shamalgs::SerializeHelper::SerializeHelper ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
sham::DeviceBuffer< u8 > && storage,
bool allow_large_int_size = false )

Definition at line 181 of file serialize.cpp.

Member Function Documentation

◆ allocate()

void shamalgs::SerializeHelper::allocate ( SerializeSize szinfo,
bool allow_large_int_size = false )

Definition at line 147 of file serialize.cpp.

◆ finalize()

sham::DeviceBuffer< u8 > shamalgs::SerializeHelper::finalize ( )

Definition at line 168 of file serialize.cpp.

◆ get_device_scheduler()

std::shared_ptr< sham::DeviceScheduler > & shamalgs::SerializeHelper::get_device_scheduler ( )
inline

Definition at line 196 of file serialize.hpp.

◆ load() [1/2]

void shamalgs::SerializeHelper::load ( std::string & s)
inline

Definition at line 272 of file serialize.hpp.

◆ load() [2/2]

template<class T>
void shamalgs::SerializeHelper::load ( T & val)
inline

Definition at line 240 of file serialize.hpp.

◆ load_buf() [1/2]

template<class T>
void shamalgs::SerializeHelper::load_buf ( sham::DeviceBuffer< T > & buf,
u64 len )
inline

Definition at line 375 of file serialize.hpp.

◆ load_buf() [2/2]

template<class T>
void shamalgs::SerializeHelper::load_buf ( sycl::buffer< T > & buf,
u64 len )
inline

Definition at line 318 of file serialize.hpp.

◆ serialize_byte_size() [1/3]

template<class T>
SerializeSize shamalgs::SerializeHelper::serialize_byte_size ( )
inlinestatic

Definition at line 210 of file serialize.hpp.

◆ serialize_byte_size() [2/3]

SerializeSize shamalgs::SerializeHelper::serialize_byte_size ( std::string s)
inlinestatic

Definition at line 219 of file serialize.hpp.

◆ serialize_byte_size() [3/3]

template<class T>
SerializeSize shamalgs::SerializeHelper::serialize_byte_size ( u64 len)
inlinestatic

Definition at line 215 of file serialize.hpp.

◆ write() [1/2]

void shamalgs::SerializeHelper::write ( std::string s)
inline

Definition at line 258 of file serialize.hpp.

◆ write() [2/2]

template<class T>
void shamalgs::SerializeHelper::write ( T val)
inline

Definition at line 224 of file serialize.hpp.

◆ write_buf() [1/2]

template<class T>
void shamalgs::SerializeHelper::write_buf ( sham::DeviceBuffer< T > & buf,
u64 len )
inline

Definition at line 347 of file serialize.hpp.

◆ write_buf() [2/2]

template<class T>
void shamalgs::SerializeHelper::write_buf ( sycl::buffer< T > & buf,
u64 len )
inline

Definition at line 289 of file serialize.hpp.


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