gpg:: SnapshotManager
#include <snapshot_manager.h>
다양한 스냅샷 관련 데이터를 가져오고 설정합니다.
요약
앱이 인증 시 스냅샷을 사용 설정하지 않으면 (GameServices::Builder::EnableSnapshots 참조) SnapshotManager
에 관한 대부분의 메서드가 실패합니다.
공개 유형 |
|
---|---|
CommitCallback
|
typedefstd::function< void(const CommitResponse &)>
CommitResponse 를 수신하는 콜백 유형을 정의합니다. |
FetchAllCallback
|
typedefstd::function< void(const FetchAllResponse &)>
FetchAllResponse 를 수신하는 콜백 유형을 정의합니다. |
MaxSizeCallback
|
typedefstd::function< void(const MaxSizeResponse &)>
MaxSizeResponse 를 수신하는 콜백 유형을 정의합니다. |
OpenCallback
|
typedefstd::function< void(const OpenResponse &)>
OpenResponse 를 수신하는 콜백 유형을 정의합니다. |
ReadCallback
|
typedefstd::function< void(const ReadResponse &)>
ReadResponse 를 수신하는 콜백 유형을 정의합니다. |
SnapshotSelectUICallback
|
typedefstd::function< void(const SnapshotSelectUIResponse &)>
ShowSelectUIOperation 에서 SnapshotSelectUIResponse 를 수신할 수 있는 콜백을 정의합니다. |
공개 함수 |
|
---|---|
Commit(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > data, CommitCallback callback)
|
void
스냅샷에 제공된 데이터를 비동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
|
CommitBlocking(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
스냅샷에 제공된 데이터를 동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
|
CommitBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
스냅샷에 제공된 데이터를 동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
|
Delete(const SnapshotMetadata & snapshot_metadata)
|
void
지정된 스냅샷을 삭제합니다.
|
FetchAll(FetchAllCallback callback)
|
void
현재 로그인된 플레이어의 모든 스냅샷 데이터를 비동기적으로 로드합니다.
|
FetchAll(DataSource data_source, FetchAllCallback callback)
|
void
현재 로그인된 플레이어의 모든 스냅샷 데이터를 비동기적으로 로드합니다.
|
FetchAllBlocking()
|
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여
FetchAllResponse 를 직접 반환합니다. |
FetchAllBlocking(DataSource data_source)
|
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여
FetchAllResponse 를 직접 반환합니다. |
FetchAllBlocking(Timeout timeout)
|
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여
FetchAllResponse 를 직접 반환합니다. |
FetchAllBlocking(DataSource data_source, Timeout timeout)
|
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여
FetchAllResponse 를 직접 반환합니다. |
GetMaxSize(MaxSizeCallback callback) const
|
void
비동기식으로 최대 데이터 크기와 스냅샷당 최대 커버 이미지 크기(바이트)를 가져옵니다.
|
GetMaxSizeBlocking() const
|
스냅샷당 최대 데이터 크기와 스냅샷당 최대 커버 이미지 크기(바이트)를 동기식으로 가져와서
MaxSizeResponse 를 직접 반환합니다. |
GetMaxSizeBlocking(Timeout timeout) const
|
최대 데이터 크기와 스냅샷당 스냅샷당 최대 커버 이미지 크기(바이트)를 동기식으로 가져와서
MaxSizeResponse 를 직접 반환합니다. |
Open(const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
|
void
지정된 이름의 스냅샷을 비동기식으로 엽니다.
|
Open(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
|
void
data_source 는 무시됩니다. 대신 Open(file_name, conflict_policy, callback) 를 사용하세요. 지정된 이름의 스냅샷을 비동기식으로 엽니다. |
OpenBlocking(const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
지정된 이름의 스냅샷을 동기식으로 엽니다.
|
OpenBlocking(Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
지정된 이름의 스냅샷을 동기식으로 엽니다.
|
OpenBlocking(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
<ph type="x-smartling-placeholder"></ph>
지원이 중단되었습니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
data_source 는 무시됩니다. 대신 OpenBlocking(file_name, conflict_policy) 를 사용하세요. 지정된 이름의 스냅샷을 동기식으로 엽니다. |
OpenBlocking(DataSource data_source, Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
<ph type="x-smartling-placeholder"></ph>
지원이 중단되었습니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
data_source 는 무시됩니다. 대신 OpenBlocking(timeout, file_name, conflict_policy) 를 사용하세요. 지정된 이름의 스냅샷을 동기식으로 엽니다. |
Read(const SnapshotMetadata & snapshot_metadata, ReadCallback callback)
|
void
비동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
|
ReadBlocking(const SnapshotMetadata & snapshot_metadata)
|
동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
|
ReadBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata)
|
동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
|
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, OpenCallback callback)
|
void
제공된 스냅샷의 데이터를 사용하여 충돌을 비동기식으로 해결합니다.
|
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents, OpenCallback callback)
|
void
제공된 데이터를 사용하여 비동기식으로 충돌을 해결합니다.
|
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
|
제공된 스냅샷의 데이터를 사용하여 충돌을 동기식으로 해결합니다.
|
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
제공된 데이터를 사용하여 충돌을 동기식으로 해결합니다.
|
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
|
제공된 스냅샷의 데이터를 사용하여 충돌을 동기식으로 해결합니다.
|
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
제공된 데이터를 사용하여 충돌을 동기식으로 해결합니다.
|
ShowSelectUIOperation(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title, SnapshotSelectUICallback callback)
|
void
비동기식으로 스냅샷 UI가 표시되므로 플레이어가 스냅샷을 선택하거나 새 스냅샷을 요청할 수 있습니다.
|
ShowSelectUIOperationBlocking(Timeout timeout, bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
|
ShowSelectUIOperation의 차단 버전입니다.
|
ShowSelectUIOperationBlocking(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
|
기본 제한 시간 10년을 사용하는 ShowSelectUIOperationBlocking의 오버로드.
|
구조체 |
|
---|---|
gpg:: |
업데이트된 스냅샷의 데이터를 응답 상태와 함께 보관합니다. |
gpg:: |
응답 상태와 함께 모든 스냅샷의 모든 데이터를 보관합니다. |
gpg:: |
스냅샷 데이터 및 스냅샷 표지 이미지의 최대 크기를 유지합니다. |
gpg:: |
요청된 특정 스냅샷의 데이터를 응답 상태와 함께 보관합니다. |
gpg:: |
스냅샷 읽기 작업에서 반환된 응답 상태와 스냅샷 데이터를 읽습니다. |
gpg:: |
|
공개 유형
CommitCallback
std::function< void(const CommitResponse &)> CommitCallback
CommitResponse
를 수신하는 콜백 유형을 정의합니다.
이 콜백 유형은 아래의 Commit(*)
및 ResolveConflict(*)
함수에 제공됩니다.
FetchAllCallback
std::function< void(const FetchAllResponse &)> FetchAllCallback
FetchAllResponse
를 수신하는 콜백 유형을 정의합니다.
이 콜백 유형은 아래의 FetchAll(*)
함수에 제공됩니다.
MaxSizeCallback
std::function< void(const MaxSizeResponse &)> MaxSizeCallback
MaxSizeResponse
를 수신하는 콜백 유형을 정의합니다.
이 콜백 유형은 GetMaxSize에 제공됩니다.
OpenCallback
std::function< void(const OpenResponse &)> OpenCallback
OpenResponse
를 수신하는 콜백 유형을 정의합니다.
이 콜백 유형은 아래의 Open(*)
함수에 제공됩니다.
ReadCallback
std::function< void(const ReadResponse &)> ReadCallback
ReadResponse
를 수신하는 콜백 유형을 정의합니다.
이 콜백 유형은 아래의 Read(*)
함수에 제공됩니다.
SnapshotSelectUICallback
std::function< void(const SnapshotSelectUIResponse &)> SnapshotSelectUICallback
ShowSelectUIOperation
에서 SnapshotSelectUIResponse
를 수신할 수 있는 콜백을 정의합니다.
공개 함수
커밋
void Commit( const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > data, CommitCallback callback )
스냅샷에 제공된 데이터를 비동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
작업 완료 시 제공된 CommitCallback
를 호출합니다.
CommitBlocking
CommitResponse CommitBlocking( const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
스냅샷에 제공된 데이터를 동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
CommitBlocking
CommitResponse CommitBlocking( Timeout timeout, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
스냅샷에 제공된 데이터를 동기식으로 커밋하고 제공된 메타데이터 객체를 사용하여 스냅샷의 메타데이터를 업데이트합니다.
timeout
를 밀리초 단위로 지정합니다.
삭제
void Delete( const SnapshotMetadata & snapshot_metadata )
지정된 스냅샷을 삭제합니다.
이렇게 하면 로컬과 서버에서 스냅샷의 데이터가 삭제됩니다.
FetchAll
void FetchAll( FetchAllCallback callback )
현재 로그인된 플레이어의 모든 스냅샷 데이터를 비동기적으로 로드합니다.
작업 완료 시 제공된 FetchAllCallback
를 호출합니다. data_source
를 지정하지 않으면 이 함수 호출이 FetchAll(DataSource data_source, FetchAllCallback callback)
호출과 같아집니다. data_source
는 CACHE_OR_NETWORK.
로 지정됩니다.
FetchAll
void FetchAll( DataSource data_source, FetchAllCallback callback )
현재 로그인된 플레이어의 모든 스냅샷 데이터를 비동기적으로 로드합니다.
작업 완료 시 제공된 FetchAllCallback
를 호출합니다. data_source
를 CACHE_OR_NETWORK
또는 NETWORK_ONLY
로 지정합니다.
FetchAllBlocking
FetchAllResponse FetchAllBlocking()
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여 FetchAllResponse
를 직접 반환합니다.
data_source
과 timeout
중 어느 것도 지정하지 않으면 이 함수 호출이 FetchAllResponse FetchAllBlocking(DataSource data_source,
Timeout timeout)
호출과 같아집니다. 여기서 data_source
는 CACHE_OR_NETWORK
로 지정되고 timeout
는 10년으로 지정됩니다.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( DataSource data_source )
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여 FetchAllResponse
를 직접 반환합니다.
data_source
를 CACHE_OR_NETWORK
또는 NETWORK_ONLY
로 지정합니다. timeout
를 지정하지 않으면 이 함수 호출이 지정된 data_source
값과 10년으로 지정된 timeout
를 사용하여 FetchAllBlocking FetchAllResponse(DataSource data_source,
Timeout timeout)
을 호출하는 것과 같습니다.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( Timeout timeout )
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여 FetchAllResponse
를 직접 반환합니다.
timeout
를 밀리초 단위로 지정합니다. data_source
를 지정하지 않으면 이 함수 호출이 FetchAllResponse FetchAllBlocking(DataSource data_source,
Timeout timeout)
호출과 같아집니다. data_source
는 CACHE_OR_NETWORK
로 지정되고 timeout
는 지정된 값을 포함합니다.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( DataSource data_source, Timeout timeout )
현재 로그인된 플레이어의 모든 스냅샷 데이터를 동기식으로 로드하여 FetchAllResponse
를 직접 반환합니다.
data_source
를 CACHE_OR_NETWORK
또는 NETWORK_ONLY
로 지정합니다. timeout
를 밀리초 단위로 지정합니다.
GetMaxSize
void GetMaxSize( MaxSizeCallback callback ) const
비동기식으로 최대 데이터 크기와 스냅샷당 최대 커버 이미지 크기(바이트)를 가져옵니다.
작업 완료 시 제공된 MaxSizeCallback
를 호출합니다.
스냅샷당 최대 데이터 크기는 3MB 이상이어야 합니다. 향후 증가할 수 있습니다.
스냅샷 표지 이미지당 최대 데이터 크기는 800KB 이상이어야 합니다. 향후 증가할 수 있습니다.
GetMaxSizeBlocking
MaxSizeResponse GetMaxSizeBlocking() const
스냅샷당 최대 데이터 크기와 스냅샷당 최대 커버 이미지 크기(바이트)를 동기식으로 가져와서 MaxSizeResponse
를 직접 반환합니다.
스냅샷당 최대 데이터 크기는 3MB 이상이어야 합니다. 향후 증가할 수 있습니다.
스냅샷 표지 이미지당 최대 데이터 크기는 800KB 이상이어야 합니다. 향후 증가할 수 있습니다.
GetMaxSizeBlocking
MaxSizeResponse GetMaxSizeBlocking( Timeout timeout ) const
스냅샷당 최대 데이터 크기와 스냅샷당 최대 커버 이미지 크기(바이트)를 동기식으로 가져와서 MaxSizeResponse
를 직접 반환합니다.
스냅샷당 최대 데이터 크기는 3MB 이상이어야 합니다. 향후 증가할 수 있습니다.
스냅샷 커버 이미지당 최대 데이터 크기는 800KB 이상이어야 합니다. 향후 증가할 수 있습니다.
timeout
를 밀리초 단위로 지정합니다.
열기
void Open( const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback )
특정 이름의 스냅샷을 비동기식으로 엽니다.
지정된 스냅샷이 아직 없으면 새로 생성됩니다. 작업 완료 시 제공된 OpenCallback
를 호출합니다.
스냅샷 이름은 URL 예약이 아닌 문자 (a~z, A~Z, 0~9 또는 기호 '-', '.', '_', '~')를 1~100자여야 합니다.
현재 기기에서 스냅샷을 로드하고 커밋하는 사이에 다른 기기에서 스냅샷을 커밋하면 충돌이 발생할 수 있습니다. 이러한 충돌을 해결해야 합니다. 충돌에 관한 자세한 내용은 위의 OpenResponse를 참조하세요.
conflict_policy
는 다음 값 중 하나일 수 있습니다.
SnapshotConflictPolicy::MANUAL
- 충돌이 발생하면 응답의 상태는 OpenResponse::VALID_WITH_CONFLICT
입니다. SnapshotManager::ResolveConflict
를 사용하여 충돌을 해결해야 합니다. 연속으로 여러 개의 충돌이 표시될 수 있으므로 Open
를 호출할 때마다 확인합니다. 이 정책에서만 충돌이 발생합니다. 나머지는 해상도를 처리합니다. 이 정책을 사용하면 저장된 게임 상태에 대한 사용자 변경사항이 손실되지 않습니다.
SnapshotConflictPolicy::LONGEST_PLAYTIME
- 충돌이 발생하면 재생 시간 값이 가장 큰 스냅샷이 사용됩니다. 이 정책은 재생 시간이 '최고'의 적절한 프록시인 경우에 적합합니다. 있습니다. 이 정책이 유의미하려면 게임을 저장할 때 SnapshotMetadataChange::Builder::SetPlayedTime()
를 사용해야 합니다.
SnapshotConflictPolicy::LAST_KNOWN_GOOD
- 충돌이 발생하면 기본 스냅샷이 사용됩니다. 이 정책은 게임에서 스냅샷 데이터의 안정성이 필요한 경우에 적합합니다. 이 정책을 사용하면 플레이어가 경합하지 않은 쓰기만 볼 수 있으므로 모든 클라이언트가 수렴됩니다. 참고: 이전 SnapshotManager::BASE_WINS
SnapshotConflictPolicy::MOST_RECENTLY_MODIFIED
: 충돌 시 리모컨이 사용됩니다. 이 정책은 게임에서 여러 기기에서 플레이어가 자신의 변경사항을 복제하는 것을 허용할 수 있는 경우 적합합니다. 이 정책은 무조건 최신 데이터를 선택하기 때문에 플레이어의 변경사항이 삭제될 수 있습니다. 참고: 이전 SnapshotManager::REMOTE_WINS
SnapshotConflictPolicy::HIGHEST_PROGRESS
충돌이 발생하면 진행률 값이 가장 높은 스냅샷이 사용됩니다. 동점인 경우에는 정상으로 알려진 마지막 스냅샷이 대신 선택됩니다. 이 정책은 게임에서 스냅샷의 진행률 값을 사용하여 가장 잘 저장된 게임을 결정하는 경우에 적합합니다. 이 정책이 유의미하려면 게임을 저장할 때 SnapshotMetadataChange::Builder::SetPlayedTime()
를 사용해야 합니다.
열기
void Open( DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback )
지정된 이름의 스냅샷을 비동기식으로 엽니다.
<ph type="x-smartling-placeholder"></ph>
지원이 중단되었습니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
data_source
는 무시됩니다. 대신 Open(file_name, conflict_policy, callback)
를 사용하세요.
OpenBlocking
OpenResponse OpenBlocking( const std::string & file_name, SnapshotConflictPolicy conflict_policy )
OpenBlocking
OpenResponse OpenBlocking( Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
OpenBlocking
OpenResponse OpenBlocking( DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
지정된 이름의 스냅샷을 동기식으로 엽니다.
<ph type="x-smartling-placeholder"></ph>
지원이 중단되었습니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
data_source
는 무시됩니다. 대신 OpenBlocking(file_name, conflict_policy)
를 사용하세요.
OpenBlocking
OpenResponse OpenBlocking( DataSource data_source, Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
지정된 이름의 스냅샷을 동기식으로 엽니다.
<ph type="x-smartling-placeholder"></ph>
지원이 중단되었습니다. 를 통해 개인정보처리방침을 정의할 수 있습니다.
data_source
는 무시됩니다. 대신 OpenBlocking(timeout, file_name, conflict_policy)
를 사용하세요.
읽기
void Read( const SnapshotMetadata & snapshot_metadata, ReadCallback callback )
비동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
쉽게 수정할 수 있도록 데이터가 값으로 다시 전달됩니다. 이 함수를 호출할 때마다 전체 읽기가 수행됩니다. 즉, 일반적으로 스냅샷을 한 번만 읽는 것이 가장 좋습니다. 작업 완료 시 제공된 ReadCallback
를 호출합니다.
ReadBlocking
ReadResponse ReadBlocking( const SnapshotMetadata & snapshot_metadata )
동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
쉽게 수정할 수 있도록 데이터가 값으로 다시 전달됩니다. 이 함수를 호출할 때마다 전체 읽기가 수행됩니다. 즉, 일반적으로 스냅샷을 한 번만 읽는 것이 가장 좋습니다. timeout
를 지정하지 않으면 이 함수 호출이 timeout
가 10년으로 지정된 ReadBlocking ReadBlocking(Timeout timeout,
const SnapshotMetadata& snapshot_metadata)
을 호출하는 것과 같습니다.
ReadBlocking
ReadResponse ReadBlocking( Timeout timeout, const SnapshotMetadata & snapshot_metadata )
동기식으로 디스크에서 스냅샷을 읽어 메모리에 복사합니다.
쉽게 수정할 수 있도록 데이터가 값으로 다시 전달됩니다. 호출할 때마다 전체 읽기가 실행되므로 일반적으로 스냅샷을 한 번만 읽습니다. timeout
를 밀리초 단위로 지정합니다.
ResolveConflict
void ResolveConflict( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, OpenCallback callback )
제공된 스냅샷의 데이터를 사용하여 충돌을 비동기식으로 해결합니다.
서버의 데이터가 지정된 스냅샷으로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
작업 완료 시 제공된 OpenCallback
를 호출합니다.
ResolveConflict
void ResolveConflict( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents, OpenCallback callback )
제공된 데이터를 사용하여 비동기식으로 충돌을 해결합니다.
서버의 데이터가 지정된 메타데이터 변경사항 및 contents
로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
메타데이터 변경에 포함되지 않은 값은 현재 서버에 있는 버전으로 확인됩니다.
contents
의 총 크기는 GetMaxSize에서 제공된 maxDataSize
를 초과할 수 없습니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
작업 완료 시 제공된 OpenCallback
를 호출합니다.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata )
제공된 스냅샷의 데이터를 사용하여 충돌을 동기식으로 해결합니다.
서버의 데이터가 지정된 스냅샷으로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
제공된 데이터를 사용하여 충돌을 동기식으로 해결합니다.
서버의 데이터가 지정된 메타데이터 변경사항 및 contents
로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
메타데이터 변경에 포함되지 않은 값은 현재 서버에 있는 버전으로 확인됩니다.
contents
의 총 크기는 GetMaxSize에 의해 제공된 maxDataSize
를 초과할 수 없습니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata )
제공된 스냅샷의 데이터를 사용하여 충돌을 동기식으로 해결합니다.
서버의 데이터가 지정된 스냅샷으로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
timeout
를 밀리초 단위로 지정합니다.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
제공된 데이터를 사용하여 충돌을 동기식으로 해결합니다.
서버의 데이터가 지정된 메타데이터 변경사항 및 contents
로 대체됩니다. 이 작업 자체가 충돌을 일으킬 수 있으며 이 경우 해결 과정을 반복해야 합니다.
메타데이터 변경에 포함되지 않은 값은 현재 서버에 있는 버전으로 확인됩니다.
contents
의 총 크기는 GetMaxSize에서 제공된 maxDataSize
를 초과할 수 없습니다.
이미 커밋되었거나 Open을 통해 열리지 않은 스냅샷으로 이 메서드를 호출하면 BaseStatus::ERROR_INTERNAL 상태와 함께 실패합니다.
timeout
를 밀리초 단위로 지정합니다.
ShowSelectUIOperation
void ShowSelectUIOperation( bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title, SnapshotSelectUICallback callback )
비동기식으로 스냅샷 UI가 표시되므로 플레이어가 스냅샷을 선택하거나 새 스냅샷을 요청할 수 있습니다.
완료되면 선택한 스냅샷 또는 새 스냅샷 요청이 SnapshotSelectUICallback
를 통해 반환됩니다.
ShowSelectUIOperationBlocking
SnapshotSelectUIResponse ShowSelectUIOperationBlocking( Timeout timeout, bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title )
ShowSelectUIOperation의 차단 버전입니다.
호출자가 밀리초 단위로 제한 시간을 지정할 수 있도록 허용합니다. 지정된 시간이 지나면 함수는 ERROR_TIMEOUT
를 반환합니다.
ShowSelectUIOperationBlocking
SnapshotSelectUIResponse ShowSelectUIOperationBlocking( bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title )
기본 제한 시간 10년을 사용하는 ShowSelectUIOperationBlocking의 오버로드.