Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
diagnostic_service_i.h
1//
2// Agora RTC/MEDIA SDK
3//
4// Created by Pengfei Han in 2020-09.
5// Copyright (c) 2020 Agora.io. All rights reserved.
6//
7#pragma once
8
9#include <string>
10#include <vector>
11
12#include "AgoraBase.h"
13
14namespace agora {
15namespace rtc {
16
18struct TConnectionInfo;
19
21public:
23 virtual void OnAudioFrameDumpCompleted(const char* channel_id, const user_id_t user_id, const std::string& location,
24 const std::string& uuid, const std::vector<std::string>& files) = 0;
25};
26
28public:
30 virtual bool HasMoreConnInfo() const = 0;
31 virtual int NextConnInfo() = 0;
32 virtual TConnectionInfo CurrentConnInfo() const = 0;
33};
34
36public:
37 IDiagnosticService() = default;
38 virtual ~IDiagnosticService() = default;
39
40 virtual void Uninitialize() = 0;
41
44
47
48 /*
49 * User should release the ConnInfosIterator got from this function with operator delete self.
50 */
52
53 /*
54 * If auto_upload is true, the dump file will be uploaded automatically when dump completed or stopped.
55 */
56 virtual int StartAudioFrameDump(const char* channel_id, user_id_t user_id, const std::string& location,
57 const std::string& uuid, const std::string& passwd, int64_t duration_ms, bool auto_upload,
58 aosl_ref_t ares = AOSL_REF_INVALID) = 0;
59 /*
60 * If auto_upload is set to false when call StartAudioFrameDump(), the file path of dump file will be
61 * stored into files, or the dump file will be uploaded to the dump server automatically.
62 */
63 virtual int StopAudioFrameDump(const char* channel_id, user_id_t user_id, const std::string& location) = 0;
64
65 /*
66 * Start tracing
67 */
68 virtual int StartTrace(uint32_t count, uint64_t mask, int scale, bool truncate_group) = 0;
69
70 /*
71 * Stop tracing
72 */
73 virtual int StopTrace(const std::string& file_path) = 0;
74
75};
76
77} // namespace rtc
78} // namespace agora
Definition diagnostic_service_i.h:27
virtual bool HasMoreConnInfo() const =0
virtual TConnectionInfo CurrentConnInfo() const =0
virtual int UnregisterRtcConnection(IRtcConnectionEx *conn)=0
virtual int UnregisterDumpStateObserver(IDumpStateObserver *observer)=0
virtual int StartTrace(uint32_t count, uint64_t mask, int scale, bool truncate_group)=0
virtual int StopTrace(const std::string &file_path)=0
virtual int RegisterRtcConnection(IRtcConnectionEx *conn)=0
virtual ~IDiagnosticService()=default
virtual int StopAudioFrameDump(const char *channel_id, user_id_t user_id, const std::string &location)=0
virtual int StartAudioFrameDump(const char *channel_id, user_id_t user_id, const std::string &location, const std::string &uuid, const std::string &passwd, int64_t duration_ms, bool auto_upload, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual ConnInfosIterator * GetConnInfosIterator() const =0
virtual int RegisterDumpStateObserver(IDumpStateObserver *observer)=0
Definition diagnostic_service_i.h:20
virtual void OnAudioFrameDumpCompleted(const char *channel_id, const user_id_t user_id, const std::string &location, const std::string &uuid, const std::vector< std::string > &files)=0
Definition rtc_connection_i.h:184
Definition AgoraExtensions.h:5
Definition AgoraAtomicOps.h:21
const char * user_id_t
Definition AgoraBase.h:853
Definition NGIAgoraRtcConnection.h:26