gpg:: SnapshotManager
#include <snapshot_manager.h>
Recebe e define vários dados relacionados a snapshots.
Resumo
Se o app não ativar os snapshots no momento da autenticação (consulte GameServices::Builder::EnableSnapshots), a maioria dos métodos no SnapshotManager
vai falhar.
Tipos públicos |
|
---|---|
CommitCallback
|
typedefstd::function< void(const CommitResponse &)>
Define um tipo de callback que recebe um CommitResponse . |
FetchAllCallback
|
typedefstd::function< void(const FetchAllResponse &)>
Define um tipo de callback que recebe um FetchAllResponse . |
MaxSizeCallback
|
typedefstd::function< void(const MaxSizeResponse &)>
Define um tipo de callback que recebe um MaxSizeResponse . |
OpenCallback
|
typedefstd::function< void(const OpenResponse &)>
Define um tipo de callback que recebe um OpenResponse . |
ReadCallback
|
typedefstd::function< void(const ReadResponse &)>
Define um tipo de callback que recebe um ReadResponse . |
SnapshotSelectUICallback
|
typedefstd::function< void(const SnapshotSelectUIResponse &)>
Define um callback que pode receber um SnapshotSelectUIResponse de ShowSelectUIOperation . |
Funções públicas |
|
---|---|
Commit(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > data, CommitCallback callback)
|
void
Confirma de forma assíncrona os dados fornecidos para o snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
|
CommitBlocking(const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
Grava de forma síncrona os dados fornecidos no snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
|
CommitBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
Grava de forma síncrona os dados fornecidos no snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
|
Delete(const SnapshotMetadata & snapshot_metadata)
|
void
Exclui o snapshot especificado.
|
FetchAll(FetchAllCallback callback)
|
void
Carrega de forma assíncrona todos os dados de snapshot do jogador conectado no momento.
|
FetchAll(DataSource data_source, FetchAllCallback callback)
|
void
Carrega de forma assíncrona todos os dados de snapshot do jogador conectado no momento.
|
FetchAllBlocking()
|
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o
FetchAllResponse . |
FetchAllBlocking(DataSource data_source)
|
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o
FetchAllResponse . |
FetchAllBlocking(Timeout timeout)
|
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o
FetchAllResponse . |
FetchAllBlocking(DataSource data_source, Timeout timeout)
|
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o
FetchAllResponse . |
GetMaxSize(MaxSizeCallback callback) const
|
void
Recebe de forma assíncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes.
|
GetMaxSizeBlocking() const
|
Recebe de forma síncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes, retornando diretamente o
MaxSizeResponse . |
GetMaxSizeBlocking(Timeout timeout) const
|
Recebe de forma síncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes, retornando diretamente o
MaxSizeResponse . |
Open(const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
|
void
Abre um snapshot de forma assíncrona com o nome fornecido.
|
Open(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback)
|
void
data_source é ignorado. Em vez dela, use Open(file_name, conflict_policy, callback) . Abre um snapshot de forma assíncrona com o nome fornecido. |
OpenBlocking(const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
Abre um snapshot de forma síncrona com o nome fornecido.
|
OpenBlocking(Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
Abre um snapshot de forma síncrona com o nome fornecido.
|
OpenBlocking(DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
Descontinuado.
data_source é ignorado. Em vez dela, use OpenBlocking(file_name, conflict_policy) . Abre um snapshot de forma síncrona com o nome fornecido. |
OpenBlocking(DataSource data_source, Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy)
|
Descontinuado.
data_source é ignorado. Em vez dela, use OpenBlocking(timeout, file_name, conflict_policy) . Abre um snapshot de forma síncrona com o nome fornecido. |
Read(const SnapshotMetadata & snapshot_metadata, ReadCallback callback)
|
void
Lê um snapshot do disco de forma assíncrona e o copia para a memória.
|
ReadBlocking(const SnapshotMetadata & snapshot_metadata)
|
Lê um snapshot do disco de forma síncrona e o copia para a memória.
|
ReadBlocking(Timeout timeout, const SnapshotMetadata & snapshot_metadata)
|
Lê um snapshot do disco de forma síncrona e o copia para a memória.
|
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, OpenCallback callback)
|
void
Resolve assíncrona um conflito usando os dados do snapshot fornecido.
|
ResolveConflict(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents, OpenCallback callback)
|
void
Resolve de forma assíncrona um conflito usando os dados fornecidos.
|
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
|
Resolve um conflito de forma síncrona usando os dados do snapshot fornecido.
|
ResolveConflictBlocking(const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
Resolve um conflito de forma síncrona usando os dados fornecidos.
|
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata)
|
Resolve um conflito de forma síncrona usando os dados do snapshot fornecido.
|
ResolveConflictBlocking(Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents)
|
Resolve um conflito de forma síncrona usando os dados fornecidos.
|
ShowSelectUIOperation(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title, SnapshotSelectUICallback callback)
|
void
Mostra a interface do snapshot de forma assíncrona, permitindo que o jogador selecione um snapshot ou solicite um novo.
|
ShowSelectUIOperationBlocking(Timeout timeout, bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
|
Versão de bloqueio de ShowSelectUIOperation.
|
ShowSelectUIOperationBlocking(bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title)
|
Sobrecarga de ShowSelectUIOperationBlocking, que usa um tempo limite padrão de 10 anos.
|
Estruturas |
|
---|---|
gpg:: |
Armazena os dados de um snapshot atualizado, além de um status de resposta. |
gpg:: |
Contém todos os dados de todos os snapshots, além de um status de resposta. |
gpg:: |
Mantém o tamanho máximo para dados e imagem de capa do resumo. |
gpg:: |
Armazena os dados de um determinado snapshot solicitado e o status da resposta. |
gpg:: |
Lê o status da resposta e os dados de snapshot retornados de uma operação de leitura de snapshot. |
gpg:: |
|
Tipos públicos
CommitCallback
std::function< void(const CommitResponse &)> CommitCallback
Define um tipo de callback que recebe um CommitResponse
.
Esse tipo de callback é fornecido às funções Commit(*)
e ResolveConflict(*)
abaixo.
FetchAllCallback
std::function< void(const FetchAllResponse &)> FetchAllCallback
Define um tipo de callback que recebe um FetchAllResponse
.
Esse tipo de callback é fornecido às funções FetchAll(*)
abaixo.
MaxSizeCallback
std::function< void(const MaxSizeResponse &)> MaxSizeCallback
Define um tipo de callback que recebe um MaxSizeResponse
.
Esse tipo de callback é fornecido para GetMaxSize.
OpenCallback
std::function< void(const OpenResponse &)> OpenCallback
Define um tipo de callback que recebe um OpenResponse
.
Esse tipo de callback é fornecido às funções Open(*)
abaixo.
ReadCallback
std::function< void(const ReadResponse &)> ReadCallback
Define um tipo de callback que recebe um ReadResponse
.
Esse tipo de callback é fornecido às funções Read(*)
abaixo.
SnapshotSelectUICallback
std::function< void(const SnapshotSelectUIResponse &)> SnapshotSelectUICallback
Define um callback que pode receber um SnapshotSelectUIResponse
de ShowSelectUIOperation
.
Funções públicas
Confirmar
void Commit( const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > data, CommitCallback callback )
Grava de forma assíncrona os dados fornecidos no snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
Chama o CommitCallback
fornecido após a conclusão da operação.
CommitBlocking
CommitResponse CommitBlocking( const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
Grava de forma síncrona os dados fornecidos no snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
CommitBlocking
CommitResponse CommitBlocking( Timeout timeout, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
Grava de forma síncrona os dados fornecidos no snapshot e atualiza os metadados do snapshot usando o objeto de metadados fornecido.
Especifique timeout
em milissegundos.
Excluir
void Delete( const SnapshotMetadata & snapshot_metadata )
Exclui o snapshot especificado.
Isso vai excluir os dados do snapshot localmente e no servidor.
FetchAll
void FetchAll( FetchAllCallback callback )
Carrega de forma assíncrona todos os dados de snapshot do jogador conectado no momento.
Chama o FetchAllCallback
fornecido após a conclusão da operação. Não especificar data_source
faz com que essa chamada de função seja equivalente a chamar FetchAll(DataSource data_source, FetchAllCallback callback)
, com data_source
especificado como CACHE_OR_NETWORK.
FetchAll
void FetchAll( DataSource data_source, FetchAllCallback callback )
Carrega de forma assíncrona todos os dados de snapshot do jogador conectado no momento.
Chama o FetchAllCallback
fornecido após a conclusão da operação. Especifique data_source
como CACHE_OR_NETWORK
ou NETWORK_ONLY
.
FetchAllBlocking
FetchAllResponse FetchAllBlocking()
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o FetchAllResponse
.
Especificar data_source
ou timeout
faz com que essa chamada de função seja equivalente a chamar FetchAllResponse FetchAllBlocking(DataSource data_source,
Timeout timeout)
, com data_source
especificado como CACHE_OR_NETWORK
e timeout
especificado como 10 anos.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( DataSource data_source )
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o FetchAllResponse
.
Especifique data_source
como CACHE_OR_NETWORK
ou NETWORK_ONLY
. Não especificar timeout
faz com que essa chamada de função seja equivalente a chamar FetchAllBlocking FetchAllResponse(DataSource data_source,
Timeout timeout)
, com o valor especificado de data_source
e timeout
especificado como 10 anos.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( Timeout timeout )
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o FetchAllResponse
.
Especifique timeout
em milissegundos. Não especificar data_source
faz com que essa chamada de função seja equivalente a chamar FetchAllResponse FetchAllBlocking(DataSource data_source,
Timeout timeout)
, com data_source
especificado como CACHE_OR_NETWORK
e timeout
contendo o valor especificado.
FetchAllBlocking
FetchAllResponse FetchAllBlocking( DataSource data_source, Timeout timeout )
Carrega de forma síncrona todos os dados de snapshot do jogador conectado no momento, retornando diretamente o FetchAllResponse
.
Especifique data_source
como CACHE_OR_NETWORK
ou NETWORK_ONLY
. Especifique timeout
em milissegundos.
GetMaxSize
void GetMaxSize( MaxSizeCallback callback ) const
Recebe de forma assíncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes.
Chama o MaxSizeCallback
fornecido após a conclusão da operação.
O tamanho máximo de dados por snapshot é de pelo menos 3 MB. Pode aumentar no futuro.
O tamanho máximo de dados por imagem de capa do snapshot precisa ser de pelo menos 800 KB. Pode aumentar no futuro.
GetMaxSizeBlocking
MaxSizeResponse GetMaxSizeBlocking() const
Recebe de forma síncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes, retornando diretamente o MaxSizeResponse
.
O tamanho máximo de dados por snapshot é garantido de pelo menos 3 MB. Pode aumentar no futuro.
O tamanho máximo de dados por imagem de capa do snapshot precisa ser de pelo menos 800 KB. Pode aumentar no futuro.
GetMaxSizeBlocking
MaxSizeResponse GetMaxSizeBlocking( Timeout timeout ) const
Recebe de forma síncrona o tamanho máximo de dados e o tamanho máximo da imagem de capa por snapshot em bytes, retornando diretamente o MaxSizeResponse
.
O tamanho máximo de dados por snapshot é de pelo menos 3 MB. Pode aumentar no futuro.
O tamanho máximo de dados por imagem de capa do snapshot precisa ser de pelo menos 800 KB. Pode aumentar no futuro.
Especifique timeout
em milissegundos.
Abrir
void Open( const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback )
Abre um snapshot de forma assíncrona com o nome fornecido.
O snapshot especificado será criado se ainda não existir. Chama o OpenCallback
fornecido após a conclusão da operação.
Os nomes dos snapshots precisam ter entre 1 e 100 caracteres não reservados para URL (a-z, A-Z, 0-9 ou os símbolos "-", ".", "_" ou "~").
Conflitos podem ocorrer se outro dispositivo confirmar um snapshot entre o carregamento e a confirmação de um snapshot no dispositivo atual. É necessário resolver esses conflitos. Consulte OpenResponse acima para mais detalhes sobre conflitos.
conflict_policy
pode ser um dos seguintes valores:
SnapshotConflictPolicy::MANUAL
: em caso de conflito, a resposta tem o estado OpenResponse::VALID_WITH_CONFLICT
. É necessário resolver o conflito usando SnapshotManager::ResolveConflict
. É possível ver vários conflitos em uma linha. Portanto, verifique sempre que chamar Open
. Essa é a única política em que você vai encontrar o conflito. O restante é resolvido para você. Essa política garante que nenhuma mudança do usuário no estado do jogo salvo seja perdida.
SnapshotConflictPolicy::LONGEST_PLAYTIME
: em caso de conflito, o snapshot com o maior valor de tempo de jogo será usado. Essa política é uma boa escolha se a duração do tempo de jogo for um indicador razoável do "melhor" jogo salvo. É necessário usar SnapshotMetadataChange::Builder::SetPlayedTime()
ao salvar jogos para que essa política seja significativa.
SnapshotConflictPolicy::LAST_KNOWN_GOOD
: em caso de conflito, o snapshot de base será usado. Essa política é uma escolha razoável se o jogo exigir estabilidade dos dados de snapshot. Essa política garante que apenas as gravações que não são contestadas sejam vistas pelo player, o que garante que todos os clientes sejam convergentes. Observação: anteriormente SnapshotManager::BASE_WINS
SnapshotConflictPolicy::MOST_RECENTLY_MODIFIED
: em caso de conflito, o controle remoto será usado. Essa política é uma escolha razoável se o jogo tolera jogadores em vários dispositivos fazendo mudanças. Como essa política escolhe cegamente os dados mais recentes, é possível que as mudanças de um jogador sejam perdidas. Observação: anteriormente SnapshotManager::REMOTE_WINS
SnapshotConflictPolicy::HIGHEST_PROGRESS
Em caso de conflito, o snapshot com o valor de progresso mais alto será usado. Em caso de empate, o último snapshot bom conhecido será escolhido. Essa política é uma boa escolha se o jogo usa o valor de progresso do snapshot para determinar o melhor jogo salvo. É necessário usar SnapshotMetadataChange::Builder::SetPlayedTime()
ao salvar jogos para que essa política seja significativa.
Abrir
void Open( DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy, OpenCallback callback )
Abre um snapshot de forma assíncrona com o nome fornecido.
Descontinuado.
data_source
é ignorado. Em vez dela, use Open(file_name, conflict_policy, callback)
.
OpenBlocking
OpenResponse OpenBlocking( const std::string & file_name, SnapshotConflictPolicy conflict_policy )
Abre um snapshot de forma síncrona com o nome fornecido.
O snapshot especificado será criado se ainda não existir.
Consulte Abrir para mais detalhes.
OpenBlocking
OpenResponse OpenBlocking( Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
Abre um snapshot de forma síncrona com o nome fornecido.
O snapshot especificado será criado se ainda não existir.
Especifique timeout
em milissegundos.
Consulte Abrir para mais detalhes.
OpenBlocking
OpenResponse OpenBlocking( DataSource data_source, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
Abre um snapshot de forma síncrona com o nome fornecido.
Descontinuado.
data_source
é ignorado. Em vez dela, use OpenBlocking(file_name, conflict_policy)
.
OpenBlocking
OpenResponse OpenBlocking( DataSource data_source, Timeout timeout, const std::string & file_name, SnapshotConflictPolicy conflict_policy )
Abre um snapshot de forma síncrona com o nome fornecido.
Descontinuado.
data_source
é ignorado. Em vez dela, use OpenBlocking(timeout, file_name, conflict_policy)
.
Ler
void Read( const SnapshotMetadata & snapshot_metadata, ReadCallback callback )
Lê um snapshot do disco de forma assíncrona e o copia para a memória.
Os dados são transmitidos por valor para facilitar a modificação. Cada chamada para essa função resulta em uma leitura completa. Isso significa que normalmente é melhor ler um snapshot apenas uma vez. Chama o ReadCallback
fornecido após a conclusão da operação.
ReadBlocking
ReadResponse ReadBlocking( const SnapshotMetadata & snapshot_metadata )
Lê um snapshot do disco de forma síncrona e o copia para a memória.
Os dados são transmitidos por valor para facilitar a modificação. Cada chamada para essa função resulta em uma leitura completa. Isso significa que normalmente é melhor ler um snapshot apenas uma vez. Se timeout
não for especificado, essa chamada de função será equivalente a chamar ReadBlocking ReadBlocking(Timeout timeout,
const SnapshotMetadata& snapshot_metadata)
, com timeout
especificado como 10 anos.
ReadBlocking
ReadResponse ReadBlocking( Timeout timeout, const SnapshotMetadata & snapshot_metadata )
Lê um snapshot do disco de forma síncrona e o copia para a memória.
Os dados são transmitidos por valor para facilitar a modificação. Cada chamada para isso faz uma leitura completa, então normalmente apenas um snapshot é lido. Especifique timeout
em milissegundos.
ResolveConflict
void ResolveConflict( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, OpenCallback callback )
Resolve assíncrona um conflito usando os dados do snapshot fornecido.
Isso vai substituir os dados no servidor pelo snapshot especificado. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
Chama o OpenCallback
fornecido após a conclusão da operação.
ResolveConflict
void ResolveConflict( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents, OpenCallback callback )
Resolve de forma assíncrona um conflito usando os dados fornecidos.
Isso vai substituir os dados no servidor pelas mudanças de metadados especificadas e contents
. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Os valores que não forem incluídos na mudança de metadados serão resolvidos para a versão atual no servidor.
O tamanho total do contents
não pode exceder o maxDataSize
fornecido por GetMaxSize.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
Chama o OpenCallback
fornecido após a conclusão da operação.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata )
Resolve um conflito de forma síncrona usando os dados do snapshot fornecido.
Isso vai substituir os dados no servidor pelo snapshot especificado. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
Resolve um conflito de forma síncrona usando os dados fornecidos.
Isso vai substituir os dados no servidor pelas mudanças de metadados especificadas e contents
. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Os valores que não forem incluídos na mudança de metadados serão resolvidos para a versão atual no servidor.
O tamanho total do contents
não pode exceder o maxDataSize
fornecido por GetMaxSize.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata )
Resolve um conflito de forma síncrona usando os dados do snapshot fornecido.
Isso vai substituir os dados no servidor pelo snapshot especificado. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
Especifique timeout
em milissegundos.
ResolveConflictBlocking
OpenResponse ResolveConflictBlocking( Timeout timeout, const std::string & conflict_id, const SnapshotMetadata & snapshot_metadata, const SnapshotMetadataChange & metadata_change, std::vector< uint8_t > contents )
Resolve um conflito de forma síncrona usando os dados fornecidos.
Isso vai substituir os dados no servidor pelas mudanças de metadados especificadas e contents
. É possível que essa operação resulte em um conflito, caso em que a resolução precisa ser repetida.
Os valores que não forem incluídos na mudança de metadados serão resolvidos para a versão atual no servidor.
O tamanho total do contents
não pode exceder o maxDataSize
fornecido por GetMaxSize.
Chamar esse método com um snapshot que já foi confirmado ou que não foi aberto por Open vai falhar com o status BaseStatus::ERROR_INTERNAL.
Especifique timeout
em milissegundos.
ShowSelectUIOperation
void ShowSelectUIOperation( bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title, SnapshotSelectUICallback callback )
Mostra a interface do snapshot de forma assíncrona, permitindo que o jogador selecione um snapshot ou solicite um novo.
Após a conclusão, o snapshot selecionado ou a nova solicitação de snapshot é retornado pelo SnapshotSelectUICallback
.
ShowSelectUIOperationBlocking
SnapshotSelectUIResponse ShowSelectUIOperationBlocking( Timeout timeout, bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title )
Versão de bloqueio de ShowSelectUIOperation.
Permite que o autor da chamada especifique um tempo limite em ms. Depois que o tempo especificado expirar, a função vai retornar ERROR_TIMEOUT
.
ShowSelectUIOperationBlocking
SnapshotSelectUIResponse ShowSelectUIOperationBlocking( bool allow_create, bool allow_delete, uint32_t max_snapshots, const std::string & title )
Sobrecarga de ShowSelectUIOperationBlocking, que usa um tempo limite padrão de 10 anos.