OpenSiv3D  v0.6.5
C++20 framework for creative coding
s3d::Blob Class Reference

バイナリデータ More...

#include <Blob.hpp>

Public Types

using base_type = Array< Byte >
 
using iterator = base_type::iterator
 
using const_iterator = base_type::const_iterator
 
using reverse_iterator = base_type::reverse_iterator
 
using const_reverse_iterator = base_type::const_reverse_iterator
 

Public Member Functions

SIV3D_NODISCARD_CXX20 Blob ()=default
 
SIV3D_NODISCARD_CXX20 Blob (const Blob &)=default
 
SIV3D_NODISCARD_CXX20 Blob (Blob &&)=default
 
SIV3D_NODISCARD_CXX20 Blob (size_t sizeBytes)
 
SIV3D_NODISCARD_CXX20 Blob (Arg::reserve_< size_t > resrveSizeBytes)
 
SIV3D_NODISCARD_CXX20 Blob (FilePathView path)
 
SIV3D_NODISCARD_CXX20 Blob (IReader &reader)
 
SIV3D_NODISCARD_CXX20 Blob (const void *src, size_t sizeBytes)
 
SIV3D_NODISCARD_CXX20 Blob (const Array< Byte > &data)
 
SIV3D_NODISCARD_CXX20 Blob (Array< Byte > &&data)
 
Bloboperator= (const Array< Byte > &other)
 
Bloboperator= (Array< Byte > &&other) noexcept
 
Bloboperator= (const Blob &other)
 
Bloboperator= (Blob &&other) noexcept
 
void create (const Blob &other)
 
void create (Blob &&other)
 
void create (const void *src, size_t sizeBytes)
 
void create (const Array< Byte > &data)
 
void create (Array< Byte > &&data)
 
bool createFromFile (FilePathView path)
 
const Byteoperator[] (const size_t index) const
 
Byteoperator[] (const size_t index)
 
const Bytedata () const noexcept
 
Bytedata () noexcept
 
const Array< Byte > & asArray () const noexcept
 
bool empty () const noexcept
 
bool isEmpty () const noexcept
 
 operator bool () const noexcept
 
size_t size () const noexcept
 バイナリデータのサイズ(バイト)を返します。 More...
 
size_t size_bytes () const noexcept
 バイナリデータのサイズ(バイト)を返します。 More...
 
size_t capacity () const noexcept
 
void reserve (size_t sizeBytes)
 
void resize (size_t sizeBytes)
 
void shrink_to_fit ()
 
void clear ()
 
void release ()
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
reverse_iterator rbegin () noexcept
 
reverse_iterator rend () noexcept
 
const_reverse_iterator rbegin () const noexcept
 
const_reverse_iterator rend () const noexcept
 
const_reverse_iterator crbegin () const noexcept
 
const_reverse_iterator crend () const noexcept
 
void append (const void *src, size_t sizeBytes)
 末尾にバイナリデータを追加します。 More...
 
bool save (FilePathView path) const
 バイナリデータをファイルに保存します。 More...
 
MD5Value md5 () const
 バイナリデータを MD5 のハッシュ値に変換します。 More...
 
std::string base64 () const
 バイナリデータを Base64 エンコードします。 More...
 
String base64Str () const
 バイナリデータを Base64 エンコードします。 More...
 
void base64 (std::string &dst) const
 バイナリデータを Base64 エンコードし、dst に格納します。 More...
 
void base64 (String &dst) const
 バイナリデータを Base64 エンコードし、dst に格納します。 More...
 

Friends

bool operator== (const Blob &lhs, const Blob &rhs) noexcept
 
bool operator!= (const Blob &lhs, const Blob &rhs) noexcept
 

Detailed Description

バイナリデータ

Member Typedef Documentation

◆ base_type

◆ const_iterator

◆ const_reverse_iterator

◆ iterator

◆ reverse_iterator

Constructor & Destructor Documentation

◆ Blob() [1/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( )
default

◆ Blob() [2/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( const Blob )
default

◆ Blob() [3/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( Blob &&  )
default

◆ Blob() [4/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( size_t  sizeBytes)
explicit

◆ Blob() [5/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( Arg::reserve_< size_t >  resrveSizeBytes)
explicit

◆ Blob() [6/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( FilePathView  path)
explicit

◆ Blob() [7/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( IReader reader)
explicit

◆ Blob() [8/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( const void *  src,
size_t  sizeBytes 
)

◆ Blob() [9/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( const Array< Byte > &  data)
explicit

◆ Blob() [10/10]

SIV3D_NODISCARD_CXX20 s3d::Blob::Blob ( Array< Byte > &&  data)
explicit

Member Function Documentation

◆ append()

void s3d::Blob::append ( const void *  src,
size_t  sizeBytes 
)

末尾にバイナリデータを追加します。

Parameters
src追加するデータの先頭ポインタ
sizeBytes追加するデータのサイズ

◆ asArray()

const Array<Byte>& s3d::Blob::asArray ( ) const
noexcept

◆ base64() [1/3]

std::string s3d::Blob::base64 ( ) const

バイナリデータを Base64 エンコードします。

Returns
エンコードされたデータ

◆ base64() [2/3]

void s3d::Blob::base64 ( std::string &  dst) const

バイナリデータを Base64 エンコードし、dst に格納します。

Parameters
dstエンコードされたデータの格納先

◆ base64() [3/3]

void s3d::Blob::base64 ( String dst) const

バイナリデータを Base64 エンコードし、dst に格納します。

Parameters
dstエンコードされたデータの格納先

◆ base64Str()

String s3d::Blob::base64Str ( ) const

バイナリデータを Base64 エンコードします。

Returns
エンコードされたデータ

◆ begin() [1/2]

const_iterator s3d::Blob::begin ( ) const
noexcept

◆ begin() [2/2]

iterator s3d::Blob::begin ( )
noexcept

◆ capacity()

size_t s3d::Blob::capacity ( ) const
noexcept

◆ cbegin()

const_iterator s3d::Blob::cbegin ( ) const
noexcept

◆ cend()

const_iterator s3d::Blob::cend ( ) const
noexcept

◆ clear()

void s3d::Blob::clear ( )

◆ crbegin()

const_reverse_iterator s3d::Blob::crbegin ( ) const
noexcept

◆ create() [1/5]

void s3d::Blob::create ( Array< Byte > &&  data)

◆ create() [2/5]

void s3d::Blob::create ( Blob &&  other)

◆ create() [3/5]

void s3d::Blob::create ( const Array< Byte > &  data)

◆ create() [4/5]

void s3d::Blob::create ( const Blob other)

◆ create() [5/5]

void s3d::Blob::create ( const void *  src,
size_t  sizeBytes 
)

◆ createFromFile()

bool s3d::Blob::createFromFile ( FilePathView  path)

◆ crend()

const_reverse_iterator s3d::Blob::crend ( ) const
noexcept

◆ data() [1/2]

const Byte* s3d::Blob::data ( ) const
noexcept

◆ data() [2/2]

Byte* s3d::Blob::data ( )
noexcept

◆ empty()

bool s3d::Blob::empty ( ) const
noexcept

◆ end() [1/2]

const_iterator s3d::Blob::end ( ) const
noexcept

◆ end() [2/2]

iterator s3d::Blob::end ( )
noexcept

◆ isEmpty()

bool s3d::Blob::isEmpty ( ) const
noexcept

◆ md5()

MD5Value s3d::Blob::md5 ( ) const

バイナリデータを MD5 のハッシュ値に変換します。

Returns
バイナリデータの MD5 ハッシュ値

◆ operator bool()

s3d::Blob::operator bool ( ) const
explicitnoexcept

◆ operator=() [1/4]

Blob& s3d::Blob::operator= ( Array< Byte > &&  other)
noexcept

◆ operator=() [2/4]

Blob& s3d::Blob::operator= ( Blob &&  other)
noexcept

◆ operator=() [3/4]

Blob& s3d::Blob::operator= ( const Array< Byte > &  other)

◆ operator=() [4/4]

Blob& s3d::Blob::operator= ( const Blob other)

◆ operator[]() [1/2]

Byte& s3d::Blob::operator[] ( const size_t  index)

◆ operator[]() [2/2]

const Byte& s3d::Blob::operator[] ( const size_t  index) const

◆ rbegin() [1/2]

const_reverse_iterator s3d::Blob::rbegin ( ) const
noexcept

◆ rbegin() [2/2]

reverse_iterator s3d::Blob::rbegin ( )
noexcept

◆ release()

void s3d::Blob::release ( )

◆ rend() [1/2]

const_reverse_iterator s3d::Blob::rend ( ) const
noexcept

◆ rend() [2/2]

reverse_iterator s3d::Blob::rend ( )
noexcept

◆ reserve()

void s3d::Blob::reserve ( size_t  sizeBytes)

◆ resize()

void s3d::Blob::resize ( size_t  sizeBytes)

◆ save()

bool s3d::Blob::save ( FilePathView  path) const

バイナリデータをファイルに保存します。

Parameters
pathファイルパス
Returns
保存に成功した場合 true, それ以外の場合は false

◆ shrink_to_fit()

void s3d::Blob::shrink_to_fit ( )

◆ size()

size_t s3d::Blob::size ( ) const
noexcept

バイナリデータのサイズ(バイト)を返します。

Remarks
size_bytes() と同じです。
Returns
バイナリデータのサイズ(バイト)

◆ size_bytes()

size_t s3d::Blob::size_bytes ( ) const
noexcept

バイナリデータのサイズ(バイト)を返します。

Remarks
size と同じです。
Returns
バイナリデータのサイズ(バイト)

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const Blob lhs,
const Blob rhs 
)
friend

◆ operator==

bool operator== ( const Blob lhs,
const Blob rhs 
)
friend

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