gpg::SnapshotManager

#include <snapshot_manager.h>

Lấy và đặt nhiều dữ liệu liên quan đến ảnh chụp nhanh.

Tóm tắt

Nếu ứng dụng không bật ảnh chụp nhanh tại thời điểm xác thực (xem phần GameServices::Builder::EnableSnapshots (Thiết lập ảnh chụp nhanh), thì hầu hết các phương thức trên SnapshotManager sẽ không hoạt động.

Loại công khai

CommitCallback typedef
std::function< void(const CommitResponse &)>
Xác định loại lệnh gọi lại nhận được CommitResponse.
FetchAllCallback typedef
std::function< void(const FetchAllResponse &)>
Xác định loại lệnh gọi lại nhận được FetchAllResponse.
MaxSizeCallback typedef
std::function< void(const MaxSizeResponse &)>
Xác định loại lệnh gọi lại nhận được MaxSizeResponse.
OpenCallback typedef
std::function< void(const OpenResponse &)>
Xác định loại lệnh gọi lại nhận được OpenResponse.
ReadCallback typedef
std::function< void(const ReadResponse &)>
Xác định loại lệnh gọi lại nhận được ReadResponse.
SnapshotSelectUICallback typedef
std::function< void(const SnapshotSelectUIResponse &)>
Xác định lệnh gọi lại có thể nhận SnapshotSelectUIResponse từ ShowSelectUIOperation.

Hàm công khai

Commit(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > data, CommitCallback callback)
void
Chuyển dữ liệu được cung cấp cho ảnh chụp nhanh một cách không đồng bộ và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng đối tượng siêu dữ liệu được cung cấp.
CommitBlocking(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
Đồng bộ xử lý dữ liệu được cung cấp cho ảnh chụp nhanh và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng cách sử dụng đối tượng siêu dữ liệu được cung cấp.
CommitBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
Đồng bộ xử lý dữ liệu được cung cấp cho ảnh chụp nhanh và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng cách sử dụng đối tượng siêu dữ liệu được cung cấp.
Delete(const SnapshotMetadata & snapshot_metadata)
void
Xoá ảnh chụp nhanh đã chỉ định.
FetchAll(FetchAllCallback callback)
void
Tải không đồng bộ tất cả dữ liệu ảnh chụp nhanh cho trình phát hiện đang đăng nhập.
FetchAll(DataSource data_source, FetchAllCallback callback)
void
Tải không đồng bộ tất cả dữ liệu ảnh chụp nhanh cho trình phát hiện đang đăng nhập.
FetchAllBlocking()
Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.
FetchAllBlocking(DataSource data_source)
Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.
FetchAllBlocking(Timeout timeout)
Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.
FetchAllBlocking(DataSource data_source, Timeout timeout)
Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.
GetMaxSize(MaxSizeCallback callback) const
void
Lấy kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh một cách không đồng bộ tính bằng byte.
GetMaxSizeBlocking() const
Nhận đồng bộ kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh tính bằng byte, trực tiếp trả về MaxSizeResponse.
GetMaxSizeBlocking(Timeout timeout) const
Nhận đồng bộ kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh tính bằng byte, trực tiếp trả về MaxSizeResponse.
Open(const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
void
Mở ảnh chụp nhanh có tên đã cho một cách không đồng bộ.
Open(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
void
Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng Open(file_name, conflict_policy, callback).
Mở ảnh chụp nhanh có tên đã cho một cách không đồng bộ.
OpenBlocking(const std::string & file_name, SnapshotConflictPolicy conflict_policy)
Mở đồng bộ một ảnh chụp nhanh có tên đã cho.
OpenBlocking(Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
Mở đồng bộ một ảnh chụp nhanh có tên đã cho.
OpenBlocking(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy) Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng OpenBlocking(file_name, conflict_policy).
Mở đồng bộ một ảnh chụp nhanh có tên đã cho.
OpenBlocking(DataSource data_source, Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy) Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng OpenBlocking(timeout, file_name, conflict_policy).
Mở đồng bộ một ảnh chụp nhanh có tên đã cho.
Read(const SnapshotMetadata & snapshot_metadata, ReadCallback callback)
void
Đọc không đồng bộ ảnh chụp nhanh khỏi ổ đĩa rồi sao chép ảnh đó vào bộ nhớ.
ReadBlocking(const SnapshotMetadata & snapshot_metadata)
Đọc đồng bộ ảnh chụp nhanh ra khỏi ổ đĩa và sao chép ảnh đó vào bộ nhớ.
ReadBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata)
Đọc đồng bộ ảnh chụp nhanh ra khỏi ổ đĩa và sao chép ảnh đó vào bộ nhớ.
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, OpenCallback callback)
void
Giải quyết không đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents, OpenCallback callback)
void
Giải quyết không đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.
ShowSelectUIOperation(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title, SnapshotSelectUICallback callback)
void
Hiển thị giao diện người dùng ảnh chụp nhanh một cách không đồng bộ, cho phép trình phát chọn ảnh chụp nhanh hoặc yêu cầu ảnh chụp nhanh mới.
ShowSelectUIOperationBlocking(Timeout timeout, bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
Phiên bản chặn của ShowSelectUIOperation.
ShowSelectUIOperationBlocking(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
Quá tải của ShowSelectUIOperationBlocking, sử dụng thời gian chờ mặc định là 10 năm.

Cấu trúc

gpg::SnapshotManager::CommitResponse

Lưu giữ dữ liệu cho ảnh chụp nhanh đã cập nhật, cùng với trạng thái phản hồi.

gpg::SnapshotManager::FetchAllResponse

Lưu giữ tất cả dữ liệu cho tất cả các ảnh chụp nhanh cùng với trạng thái phản hồi.

gpg::SnapshotManager::MaxSizeResponse

Giữ kích thước tối đa cho dữ liệu tổng quan nhanh và ảnh bìa của ảnh chụp nhanh.

gpg::SnapshotManager::OpenResponse

Lưu giữ dữ liệu cho một ảnh chụp nhanh cụ thể được yêu cầu cùng với trạng thái phản hồi.

gpg::SnapshotManager::ReadResponse

Đọc trạng thái phản hồi và dữ liệu tổng quan nhanh được trả về từ thao tác đọc ảnh chụp nhanh.

gpg::SnapshotManager::SnapshotSelectUIResponse

DataResponseStatus cho toán tử ShowSelectUIOperation.

Loại công khai

CommitCallback

std::function< void(const CommitResponse &)> CommitCallback

Xác định loại lệnh gọi lại nhận được CommitResponse.

Loại lệnh gọi lại này được cung cấp cho các hàm Commit(*)ResolveConflict(*) bên dưới.

FetchAllCallback

std::function< void(const FetchAllResponse &)> FetchAllCallback

Xác định loại lệnh gọi lại nhận được FetchAllResponse.

Loại lệnh gọi lại này được cung cấp cho các hàm FetchAll(*) dưới đây.

MaxSizeCallback

std::function< void(const MaxSizeResponse &)> MaxSizeCallback

Xác định loại lệnh gọi lại nhận được MaxSizeResponse.

Loại lệnh gọi lại này được cung cấp cho GetMaxSize.

OpenCallback

std::function< void(const OpenResponse &)> OpenCallback

Xác định loại lệnh gọi lại nhận được OpenResponse.

Loại lệnh gọi lại này được cung cấp cho các hàm Open(*) dưới đây.

ReadCallback

std::function< void(const ReadResponse &)> ReadCallback

Xác định loại lệnh gọi lại nhận được ReadResponse.

Loại lệnh gọi lại này được cung cấp cho các hàm Read(*) dưới đây.

SnapshotSelectUICallback

std::function< void(const SnapshotSelectUIResponse &)> SnapshotSelectUICallback

Xác định lệnh gọi lại có thể nhận SnapshotSelectUIResponse từ ShowSelectUIOperation.

Hàm công khai

Cam kết

void Commit(
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > data,
  CommitCallback callback
)

Chuyển dữ liệu được cung cấp cho ảnh chụp nhanh một cách không đồng bộ và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng đối tượng siêu dữ liệu được cung cấp.

Gọi CommitCallback được cung cấp khi hoàn tất thao tác.

CommitBlocking

CommitResponse CommitBlocking(
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > contents
)

Đồng bộ xử lý dữ liệu được cung cấp cho ảnh chụp nhanh và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng cách sử dụng đối tượng siêu dữ liệu được cung cấp.

CommitBlocking

CommitResponse CommitBlocking(
  Timeout timeout,
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > contents
)

Đồng bộ xử lý dữ liệu được cung cấp cho ảnh chụp nhanh và cập nhật siêu dữ liệu của ảnh chụp nhanh bằng cách sử dụng đối tượng siêu dữ liệu được cung cấp.

Chỉ định timeout bằng mili giây.

Xoá

void Delete(
  const SnapshotMetadata & snapshot_metadata
)

Xoá ảnh chụp nhanh đã chỉ định.

Thao tác này sẽ xoá dữ liệu của ảnh chụp nhanh cục bộ và trên máy chủ.

FetchAll

void FetchAll(
  FetchAllCallback callback
)

Tải không đồng bộ tất cả dữ liệu ảnh chụp nhanh cho trình phát hiện đang đăng nhập.

Gọi FetchAllCallback được cung cấp khi hoàn tất thao tác. Nếu không chỉ định data_source, lệnh gọi hàm này sẽ tương đương với việc gọi FetchAll(DataSource data_source, FetchAllCallback callback), trong đó data_source được chỉ định là CACHE_OR_NETWORK.

FetchAll

void FetchAll(
  DataSource data_source,
  FetchAllCallback callback
)

Tải không đồng bộ tất cả dữ liệu ảnh chụp nhanh cho trình phát hiện đang đăng nhập.

Gọi FetchAllCallback được cung cấp khi hoàn tất thao tác. Hãy chỉ định data_sourceCACHE_OR_NETWORK hoặc NETWORK_ONLY.

FetchAllBlocking

FetchAllResponse FetchAllBlocking()

Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.

Việc chỉ định cả data_sourcetimeout sẽ làm cho lệnh gọi hàm này tương đương với việc gọi FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout), trong đó data_source được chỉ định là CACHE_OR_NETWORKtimeout được chỉ định là 10 năm.

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source
)

Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.

Hãy chỉ định data_sourceCACHE_OR_NETWORK hoặc NETWORK_ONLY. Nếu bạn không chỉ định timeout, lệnh gọi hàm này sẽ được chỉ định tương đương với việc gọi FetchAllBlocking FetchAllResponse(DataSource data_source, Timeout timeout), với giá trị data_source được chỉ định và timeout được chỉ định là 10 năm.

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  Timeout timeout
)

Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.

Chỉ định timeout bằng mili giây. Nếu không chỉ định data_source, lệnh gọi hàm này sẽ tương đương với việc gọi FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout), trong đó data_source được chỉ định là CACHE_OR_NETWORKtimeout chứa giá trị mà bạn đã chỉ định.

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source,
  Timeout timeout
)

Tải đồng bộ tất cả dữ liệu tổng quan nhanh cho trình phát hiện đã đăng nhập, trực tiếp trả về FetchAllResponse.

Hãy chỉ định data_sourceCACHE_OR_NETWORK hoặc NETWORK_ONLY. Chỉ định timeout bằng mili giây.

GetMaxSize

void GetMaxSize(
  MaxSizeCallback callback
) const 

Lấy kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh một cách không đồng bộ tính bằng byte.

Gọi MaxSizeCallback được cung cấp khi hoàn tất thao tác.

Dung lượng dữ liệu tối đa cho mỗi bản tổng quan nhanh đảm bảo là ít nhất 3 MB. Có thể tăng trong tương lai.

Kích thước dữ liệu tối đa cho mỗi ảnh bìa ảnh chụp nhanh đảm bảo là tối thiểu 800 KB. Có thể tăng trong tương lai.

GetMaxSizeBlocking

MaxSizeResponse GetMaxSizeBlocking() const 

Nhận đồng bộ kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh tính bằng byte, trực tiếp trả về MaxSizeResponse.

Dung lượng dữ liệu tối đa cho mỗi bản tổng quan nhanh đảm bảo là ít nhất 3 MB. Có thể tăng trong tương lai.

Kích thước dữ liệu tối đa cho mỗi ảnh bìa ảnh chụp nhanh đảm bảo là tối thiểu 800 KB. Có thể tăng trong tương lai.

GetMaxSizeBlocking

MaxSizeResponse GetMaxSizeBlocking(
  Timeout timeout
) const 

Nhận đồng bộ kích thước dữ liệu tối đa và kích thước ảnh bìa tối đa cho mỗi ảnh chụp nhanh tính bằng byte, trực tiếp trả về MaxSizeResponse.

Dung lượng dữ liệu tối đa cho mỗi bản tổng quan nhanh đảm bảo là ít nhất 3 MB. Có thể tăng trong tương lai.

Kích thước dữ liệu tối đa cho mỗi ảnh bìa ảnh chụp nhanh đảm bảo là tối thiểu 800 KB. Có thể tăng trong tương lai.

Chỉ định timeout bằng mili giây.

Đang mở

void Open(
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy,
  OpenCallback callback
)

Mở ảnh chụp nhanh có tên đã cho một cách không đồng bộ.

Ảnh chụp nhanh được chỉ định sẽ được tạo nếu chưa có. Gọi OpenCallback được cung cấp khi hoàn tất thao tác.

Tên ảnh chụp nhanh phải có từ 1 đến 100 ký tự không dành riêng cho URL (a-z, A-Z, 0-9 hoặc các ký hiệu "-", ".", "_" hoặc "~").

Xung đột có thể xảy ra nếu một thiết bị khác thực hiện ảnh chụp nhanh trong khoảng thời gian tải và gửi ảnh chụp nhanh trên thiết bị hiện tại. Bạn phải giải quyết những xung đột này. Xem OpenResponse ở trên để biết thêm thông tin chi tiết về xung đột.

conflict_policy có thể là một trong những giá trị sau:

SnapshotConflictPolicy::MANUAL – Trong trường hợp có xung đột, phản hồi có trạng thái OpenResponse::VALID_WITH_CONFLICT. Bạn phải giải quyết xung đột bằng SnapshotManager::ResolveConflict. Bạn có thể thấy nhiều con lỗi trong một hàng, vì vậy, hãy kiểm tra mỗi khi bạn gọi Open. Đây là chính sách duy nhất mà bạn sẽ thấy xung đột. Phần còn lại sẽ xử lý giải pháp cho bạn. Chính sách này đảm bảo rằng sẽ không có thay đổi nào của người dùng đối với trạng thái của trò chơi đã lưu.

SnapshotConflictPolicy::LONGEST_PLAYTIME – Trong trường hợp xảy ra xung đột, hệ thống sẽ sử dụng bản tổng quan nhanh có giá trị thời gian phát lớn nhất. Chính sách này là lựa chọn phù hợp nếu thời lượng chơi là một proxy hợp lý cho trò chơi lưu "hay nhất". Xin lưu ý rằng bạn phải sử dụng SnapshotMetadataChange::Builder::SetPlayedTime() khi lưu trò chơi để chính sách này có ý nghĩa.

SnapshotConflictPolicy::LAST_KNOWN_GOOD – Trong trường hợp có xung đột, ảnh chụp nhanh cơ sở sẽ được sử dụng. Chính sách này là lựa chọn hợp lý nếu trò chơi của bạn cần độ ổn định từ dữ liệu tổng quan nhanh. Chính sách này đảm bảo rằng trình phát chỉ nhìn thấy những lệnh ghi không có tranh chấp, nhờ đó đảm bảo rằng tất cả ứng dụng đều hội tụ. Lưu ý: trước đây là SnapshotManager::BASE_WINS

SnapshotConflictPolicy::MOST_RECENTLY_MODIFIED – Trong trường hợp xảy ra xung đột, điều khiển từ xa sẽ được sử dụng. Chính sách này là lựa chọn hợp lý nếu trò chơi của bạn có thể cho phép người chơi trên nhiều thiết bị che giấu thay đổi của chính họ. Do chính sách này chọn dữ liệu gần đây nhất một cách mù quáng, nên có thể thay đổi của người chơi có thể bị mất. Lưu ý: trước đây là SnapshotManager::REMOTE_WINS

SnapshotConflictPolicy::HIGHEST_PROGRESSTrong trường hợp có xung đột, bản tổng quan nhanh có giá trị tiến trình cao nhất sẽ được sử dụng. Trong trường hợp sự ràng buộc, ảnh chụp nhanh đã biết gần đây nhất sẽ được chọn. Bạn nên chọn chính sách này nếu trò chơi sử dụng giá trị tiến trình của ảnh chụp nhanh để xác định trò chơi đã lưu hay nhất. Xin lưu ý rằng bạn phải sử dụng SnapshotMetadataChange::Builder::SetPlayedTime() khi lưu trò chơi để chính sách này có ý nghĩa.

Đang mở

void Open(
  DataSource data_source,
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy,
  OpenCallback callback
)

Mở ảnh chụp nhanh có tên đã cho một cách không đồng bộ.

Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng Open(file_name, conflict_policy, callback).

OpenBlocking

OpenResponse OpenBlocking(
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy
)

Mở đồng bộ một ảnh chụp nhanh có tên đã cho.

Ảnh chụp nhanh được chỉ định sẽ được tạo nếu chưa có.

Hãy xem phần Mở để biết thêm chi tiết.

OpenBlocking

OpenResponse OpenBlocking(
  Timeout timeout,
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy
)

Mở đồng bộ một ảnh chụp nhanh có tên đã cho.

Ảnh chụp nhanh được chỉ định sẽ được tạo nếu chưa có.

Chỉ định timeout bằng mili giây.

Hãy xem phần Mở để biết thêm chi tiết.

OpenBlocking

OpenResponse OpenBlocking(
  DataSource data_source,
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy
)

Mở đồng bộ một ảnh chụp nhanh có tên đã cho.

Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng OpenBlocking(file_name, conflict_policy).

OpenBlocking

OpenResponse OpenBlocking(
  DataSource data_source,
  Timeout timeout,
  const std::string & file_name,
  SnapshotConflictPolicy conflict_policy
)

Mở đồng bộ một ảnh chụp nhanh có tên đã cho.

Không dùng nữa. data_source sẽ bị bỏ qua. Thay vào đó, hãy sử dụng OpenBlocking(timeout, file_name, conflict_policy).

Đã đọc

void Read(
  const SnapshotMetadata & snapshot_metadata,
  ReadCallback callback
)

Đọc không đồng bộ ảnh chụp nhanh khỏi ổ đĩa rồi sao chép ảnh đó vào bộ nhớ.

Dữ liệu được trả về theo giá trị để sửa đổi dễ dàng hơn. Mỗi lệnh gọi đến hàm này dẫn đến một lượt đọc toàn bộ. Điều này có nghĩa là thông thường, tốt nhất bạn chỉ nên đọc ảnh chụp nhanh một lần. Gọi ReadCallback được cung cấp khi hoàn tất thao tác.

ReadBlocking

ReadResponse ReadBlocking(
  const SnapshotMetadata & snapshot_metadata
)

Đọc đồng bộ ảnh chụp nhanh ra khỏi ổ đĩa và sao chép ảnh đó vào bộ nhớ.

Dữ liệu được trả về theo giá trị để sửa đổi dễ dàng hơn. Mỗi lệnh gọi đến hàm này dẫn đến một lượt đọc toàn bộ. Điều này có nghĩa là thông thường, tốt nhất bạn chỉ nên đọc ảnh chụp nhanh một lần. Nếu không chỉ định timeout, lệnh gọi hàm này sẽ tương đương với việc gọi ReadBlocking ReadBlocking(Timeout timeout, const SnapshotMetadata& snapshot_metadata), trong đó timeout được chỉ định là 10 năm.

ReadBlocking

ReadResponse ReadBlocking(
  Timeout timeout,
  const SnapshotMetadata & snapshot_metadata
)

Đọc đồng bộ ảnh chụp nhanh ra khỏi ổ đĩa và sao chép ảnh đó vào bộ nhớ.

Dữ liệu được trả về theo giá trị để sửa đổi dễ dàng hơn. Mỗi lệnh gọi đến hàm này đều thực hiện đọc toàn bộ nên thường chỉ đọc ảnh chụp nhanh một lần. Chỉ định timeout bằng mili giây.

ResolveConflict

void ResolveConflict(
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata,
  OpenCallback callback
)

Giải quyết không đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng ảnh chụp nhanh được chỉ định. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

Gọi OpenCallback được cung cấp khi hoàn tất thao tác.

ResolveConflict

void ResolveConflict(
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > contents,
  OpenCallback callback
)

Giải quyết không đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng các thay đổi về siêu dữ liệu được chỉ định và contents. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Các giá trị không có trong thay đổi về siêu dữ liệu sẽ được chuyển thành phiên bản hiện có trên máy chủ.

Xin lưu ý rằng tổng kích thước của contents không được vượt quá maxDataSize do GetMaxSize cung cấp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

Gọi OpenCallback được cung cấp khi hoàn tất thao tác.

ResolveConflictBlocking

OpenResponse ResolveConflictBlocking(
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata
)

Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng ảnh chụp nhanh được chỉ định. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

ResolveConflictBlocking

OpenResponse ResolveConflictBlocking(
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > contents
)

Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng các thay đổi về siêu dữ liệu được chỉ định và contents. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Các giá trị không có trong thay đổi về siêu dữ liệu sẽ được chuyển thành phiên bản hiện có trên máy chủ.

Xin lưu ý rằng tổng kích thước của contents không được vượt quá maxDataSize do GetMaxSize cung cấp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

ResolveConflictBlocking

OpenResponse ResolveConflictBlocking(
  Timeout timeout,
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata
)

Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu từ ảnh chụp nhanh được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng ảnh chụp nhanh được chỉ định. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

Chỉ định timeout bằng mili giây.

ResolveConflictBlocking

OpenResponse ResolveConflictBlocking(
  Timeout timeout,
  const std::string & conflict_id,
  const SnapshotMetadata & snapshot_metadata,
  const SnapshotMetadataChange & metadata_change,
  std::vector< uint8_t > contents
)

Giải quyết đồng bộ xung đột bằng cách sử dụng dữ liệu được cung cấp.

Thao tác này sẽ thay thế dữ liệu trên máy chủ bằng các thay đổi về siêu dữ liệu được chỉ định và contents. Lưu ý rằng thao tác này có thể tự tạo ra xung đột. Trong trường hợp này, bạn nên lặp lại giải pháp.

Các giá trị không có trong thay đổi về siêu dữ liệu sẽ được chuyển thành phiên bản hiện có trên máy chủ.

Xin lưu ý rằng tổng kích thước của contents không được vượt quá maxDataSize do GetMaxSize cung cấp.

Việc gọi phương thức này bằng một ảnh chụp nhanh đã được cam kết hoặc chưa được mở qua chế độ Mở sẽ không thành công với trạng thái BaseStatus::ERROR_INTERNAL.

Chỉ định timeout bằng mili giây.

ShowSelectUIOperation

void ShowSelectUIOperation(
  bool allow_create,
  bool allow_delete,
  uint32_t max_snapshots,
  const std::string & title,
  SnapshotSelectUICallback callback
)

Hiển thị giao diện người dùng ảnh chụp nhanh một cách không đồng bộ, cho phép trình phát chọn ảnh chụp nhanh hoặc yêu cầu ảnh chụp nhanh mới.

Sau khi hoàn tất, ảnh chụp nhanh đã chọn hoặc yêu cầu tổng quan nhanh mới sẽ được trả về qua SnapshotSelectUICallback.

ShowSelectUIOperationBlocking

SnapshotSelectUIResponse ShowSelectUIOperationBlocking(
  Timeout timeout,
  bool allow_create,
  bool allow_delete,
  uint32_t max_snapshots,
  const std::string & title
)

Phiên bản chặn của ShowSelectUIOperation.

Cho phép phương thức gọi chỉ định thời gian chờ tính bằng mili giây. Sau khi thời gian được chỉ định trôi qua, hàm sẽ trả về ERROR_TIMEOUT.

ShowSelectUIOperationBlocking

SnapshotSelectUIResponse ShowSelectUIOperationBlocking(
  bool allow_create,
  bool allow_delete,
  uint32_t max_snapshots,
  const std::string & title
)

Quá tải của ShowSelectUIOperationBlocking, sử dụng thời gian chờ mặc định là 10 năm.