19#ifndef CPPREALM_BRIDGE_REALM_HPP
20#define CPPREALM_BRIDGE_REALM_HPP
22#include <cpprealm/internal/bridge/utils.hpp>
41 열거형 클래스 client_reset_mode: uint8_t {
53namespace realm::internal::bridge {
54 템플릿<
typename T>
struct client_reset_mode_base;
63 struct async_open_task;
68 열거형 클래스 sync_session_stop_policy: uint8_t {
71 after_changes_uploaded,
77 사용 port_type = std::uint_fast16_t;
81 std::optional<std::pair<std::string, std::string>> username_password;
88 연산자 std::shared_ptr<SyncConfig>()
const;
89 set_stop_policy (sync_session_stop_policy &&);
93 std::shared_ptr<SyncConfig> m_config;
99 열거형 클래스 schema_mode : uint8_t {
185 config(
const RealmConfig&);
186 config(
const std::string& 경로,
187 const std::shared_ptr<struct scheduler>&
스케줄러);
188 [[nodiscard]] std::string path()
const;
190 [[nodiscard]] std::shared_ptr<struct scheduler>
스케줄러()
const;
191 연산자 RealmConfig()
const;
192 set_path (
const std::string&);
193 set_schema (
const std::vector<object_schema>&);
194 set_schema_mode (schema_mode);
195 set_scheduler (
const std::shared_ptr<struct scheduler>&);
196 set_sync_config(
const std::optional<struct<struct sync_config>sync_config >&);
197 set_custom_http_headers (
const std::map<std::string, std::string>& headers);
199 set_schema_version (uint64_t version);
200 set_encryption_key (
const std::array<char, 64>&);
201 oid
should_compact_on_launch (std::function<
bool(uint64_t total_bytes, uint64_tused_bytes)>&& fn);
202 std::optional<schema> get_schema();
206 before_client_reset([fn = std::move(handler.m_before)](
realm local_realm) {
207 fn(local_realm.freeze());
209 after_client_reset([fn = std::move(handler.m_after)](
realm local_realm,
realm remote_realm) {
210 fn(local_realm.freeze(), remote_realm);
212 set_client_reset_mode(handler.m_mode);
214 enum client_reset_mode get_client_reset_mode()
const;
216 void set_client_reset_mode(
enum client_reset_mode mode);
217 before_client_reset(std::function< oid
(
영역 old_realm )> 콜백);
218 oid after_client_reset (std::function< oid
(
realm local_realm ,
realm remote_realm)> 콜백);
219 인라인 RealmConfig* get_config();
220 인라인 const RealmConfig* get_config()
const;
221#ifdef CPPRALM_HAVE_GENERATED_BRIDGE_TYPES
222 storage::Realm_Config m_config[1];
224 std::shared_ptr<RealmConfig> m_config;
230 realm(std::shared_ptr<Realm>);
232 연산자 std::shared_ptr<Realm>()
const;
234 [[nodiscard]]
config get_config()
const;
236 start_transaction()
const 무효화 ;
237 commit_transaction()
const 를 무효화 합니다.
238 테이블 table_for_object_type(
const std::string& object_type);
239 테이블 get_table(
const uint32_t &);
240 [[nodiscard]] std::shared_ptr<struct scheduler>
스케줄러()
const;
243 bool is_frozen()
const;
249 obj import_copy_of(
const obj&)
const;
250 [[nodiscard]] std::optional<sync_session> get_sync_session()
const;
252 std::shared_ptr<Realm> m_realm;
259 std::function<oid(T local)> m_before;
260 std::function<oid(T local, T remote)> m_after;
261 ::realm::client_reset_mode m_mode;
272 bool 연산자 ==(
const 영역&,
const 영역&);
정의: async_open_task.hpp:31
정의: thread_safe_reference.hpp:32