30 struct CrashProcessorInfo {
40 CrashProcessorInfo& operator=(CrashProcessorInfo
const&);
41 CrashProcessorInfo(CrashProcessorInfo
const&);
53 MCNAPI_C
void $dtor();
57 struct CrashedSessionInfo {
68 CrashedSessionInfo& operator=(CrashedSessionInfo
const&);
69 CrashedSessionInfo(CrashedSessionInfo
const&);
81 MCNAPI_C
void $dtor();
106 CrashManagerImpl& operator=(CrashManagerImpl
const&);
107 CrashManagerImpl(CrashManagerImpl
const&);
114 virtual ~CrashManagerImpl() =
default;
116 virtual ~CrashManagerImpl() ;
119 virtual void initialize(::std::string_view crashDirectoryName) ;
121 virtual void setCrashProcessorForFileType(
122 ::std::string_view fileExtension,
123 ::std::shared_ptr<::Bedrock::CrashFileProcessor> processor
127 setCrashTelemetryProcessor(::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> processor) ;
129 virtual void processCrashes(
130 ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> workerPool,
132 bool isNetworkAvailable
135 virtual void notifyCrashed() ;
137 virtual void notifySystemError(uint errorCode, ::std::string
const& errorMessage) ;
139 virtual void recordCrashedSession(
140 ::std::string_view sessionId,
141 ::std::string_view serializedSession,
145 virtual void stopProcessingCrashes() ;
147 virtual bool isCrashProcessingActive() const ;
149 virtual ::
std::
string const& getCrashDataRoot() const ;
151 virtual ::
std::
string const& getCrashedSessionFileSuffix() const ;
157 MCNAPI_C
void _doNetworkUnavailableCleanup();
159 MCNAPI_C ::
std::shared_ptr<::Bedrock::
SessionInfo> _findCrashedSessionInfo(::
std::string_view sessionId) const;
161 MCNAPI_C
void _finishSendingTelemetry();
163 MCNAPI_C
void _notifyDoneWithSession(::
std::string_view sessionId);
165 MCNAPI_C
void _preProcessSessions();
167 MCNAPI_C
void _processCrashesAsync(
168 ::
std::vector<::Core::PathBuffer<::
std::
string>> const& paths,
170 ::
std::shared_ptr<::gsl::final_action<::
std::function<
void()>>> doneTask
173 MCNAPI_C
void _processCrashesSync(
174 ::
std::vector<::Core::PathBuffer<::
std::
string>> const& paths,
176 ::
std::shared_ptr<::gsl::final_action<::
std::function<
void()>>> doneTask
179 MCNAPI_C ::Bedrock::Threading::Async<
bool>
180 _processOneCrash(::Core::PathBuffer<::
std::
string> const& filePath, ::Bedrock::
CrashFileProcessor* processor);
182 MCNAPI_C
void _queueTask(::
std::string_view name, ::
std::function<
void()>&& task);
184 MCNAPI_C
void _resetProcessingState();
186 MCNAPI_C
void _scanCrashFiles();
192 MCNAPI_C
void* $ctor();
205 MCNAPI
void $initialize(::std::string_view crashDirectoryName);
207 MCNAPI
void $setCrashProcessorForFileType(
208 ::std::string_view fileExtension,
209 ::std::shared_ptr<::Bedrock::CrashFileProcessor> processor
212 MCNAPI
void $setCrashTelemetryProcessor(::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> processor);
214 MCNAPI
void $processCrashes(
215 ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> workerPool,
217 bool isNetworkAvailable
220 MCNAPI
void $notifyCrashed();
222 MCNAPI
void $notifySystemError(uint errorCode, ::std::string
const& errorMessage);
225 $recordCrashedSession(::std::string_view sessionId, ::std::string_view serializedSession, int64 crashTime);
227 MCNAPI
void $stopProcessingCrashes();
229 MCNAPI
bool $isCrashProcessingActive()
const;
231 MCNAPI ::std::string
const& $getCrashDataRoot()
const;
233 MCNAPI ::std::string
const& $getCrashedSessionFileSuffix()
const;