AM Daemon ライブラリリファレンス
静的公開メンバ関数 | 公開変数類 | 全メンバ一覧
amdaemon::BackupRecord 構造体

不揮発データバックアップレコード情報構造体。 [詳解]

#include <BackupRecord.h>

静的公開メンバ関数

static BackupRecord make (void *address, std::size_t size, BackupDevice device)
 バックアップレコード情報を作成する。 [詳解]
 
template<class Data >
static auto make (Data &data, BackupDevice device) -> typename std::enable_if< !std::is_const< Data >::value && ::amdaemon::util::IsBinaryCopyable< Data >::value, BackupRecord >::type
 データ参照からバックアップレコード情報を作成する。 [詳解]
 

公開変数類

void * address
 データアドレス。このアドレスに対して読み書きを行う。 [詳解]
 
std::size_t size
 データサイズ。 [詳解]
 
BackupDevice device
 バックアップ先デバイス。 [詳解]
 

詳解

不揮発データバックアップレコード情報構造体。

参照
Backup

不揮発メモリにバックアップするデータ単体の情報を保持する。

関数詳解

static BackupRecord amdaemon::BackupRecord::make ( void *  address,
std::size_t  size,
BackupDevice  device 
)
inlinestatic

バックアップレコード情報を作成する。

引数
[in]addressデータアドレス。
[in]sizeデータサイズ。
[in]deviceバックアップ先デバイス。
戻り値
バックアップレコード情報。
template<class Data >
static auto amdaemon::BackupRecord::make ( Data &  data,
BackupDevice  device 
) -> typename std::enable_if< !std::is_const<Data>::value && ::amdaemon::util::IsBinaryCopyable<Data>::value, BackupRecord>::type
inlinestatic

データ参照からバックアップレコード情報を作成する。

テンプレート引数
Dataデータ型。後述の要件を満たす型でなければならない。
引数
[in]dataデータ参照。
[in]deviceバックアップ先デバイス。
戻り値
バックアップレコード情報。

データサイズは sizeof(data) となる。

型 Data は下記の要件をすべて満たす必要がある。

  • const 修飾されていない。
  • オブジェクト型(スカラ型、配列、クラス&構造体、共用体のいずれか)である。
  • トリビアルコピー可能な型である。
  • ポインタ型ではない。
  • std::nullptr_t 型ではない。

要するに、安全に std::memcpy によるコピーが可能な型である必要がある。 1つでも満たしていない場合はコンパイルエラーとなる。

メンバ詳解

void* amdaemon::BackupRecord::address

データアドレス。このアドレスに対して読み書きを行う。

std::size_t amdaemon::BackupRecord::size

データサイズ。

BackupDevice amdaemon::BackupRecord::device

バックアップ先デバイス。


この構造体詳解は次のファイルから抽出されました: