• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 // This is the pure C wrapper of the DataLog class.
12 
13 #include "webrtc/system_wrappers/include/data_log_c.h"
14 
15 #include <string>
16 
17 #include "webrtc/system_wrappers/include/data_log.h"
18 
WebRtcDataLog_CreateLog()19 extern "C" int WebRtcDataLog_CreateLog() {
20   return webrtc::DataLog::CreateLog();
21 }
22 
WebRtcDataLog_ReturnLog()23 extern "C" void WebRtcDataLog_ReturnLog() {
24   return webrtc::DataLog::ReturnLog();
25 }
26 
WebRtcDataLog_Combine(char * combined_name,size_t combined_len,const char * table_name,int table_id)27 extern "C" char* WebRtcDataLog_Combine(char* combined_name, size_t combined_len,
28                                        const char* table_name, int table_id) {
29   if (!table_name) return NULL;
30   std::string combined = webrtc::DataLog::Combine(table_name, table_id);
31   if (combined.size() >= combined_len) return NULL;
32   std::copy(combined.begin(), combined.end(), combined_name);
33   combined_name[combined.size()] = '\0';
34   return combined_name;
35 }
36 
WebRtcDataLog_AddTable(const char * table_name)37 extern "C" int WebRtcDataLog_AddTable(const char* table_name) {
38   if (!table_name) return -1;
39   return webrtc::DataLog::AddTable(table_name);
40 }
41 
WebRtcDataLog_AddColumn(const char * table_name,const char * column_name,int multi_value_length)42 extern "C" int WebRtcDataLog_AddColumn(const char* table_name,
43                                        const char* column_name,
44                                        int multi_value_length) {
45   if (!table_name || !column_name) return -1;
46   return webrtc::DataLog::AddColumn(table_name, column_name,
47                                     multi_value_length);
48 }
49 
WebRtcDataLog_InsertCell_int(const char * table_name,const char * column_name,int value)50 extern "C" int WebRtcDataLog_InsertCell_int(const char* table_name,
51                                             const char* column_name,
52                                             int value) {
53   if (!table_name || !column_name) return -1;
54   return webrtc::DataLog::InsertCell(table_name, column_name, value);
55 }
56 
WebRtcDataLog_InsertArray_int(const char * table_name,const char * column_name,const int * values,int length)57 extern "C" int WebRtcDataLog_InsertArray_int(const char* table_name,
58                                              const char* column_name,
59                                              const int* values,
60                                              int length) {
61   if (!table_name || !column_name) return -1;
62   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
63 }
64 
WebRtcDataLog_InsertCell_float(const char * table_name,const char * column_name,float value)65 extern "C" int WebRtcDataLog_InsertCell_float(const char* table_name,
66                                               const char* column_name,
67                                               float value) {
68   if (!table_name || !column_name) return -1;
69   return webrtc::DataLog::InsertCell(table_name, column_name, value);
70 }
71 
WebRtcDataLog_InsertArray_float(const char * table_name,const char * column_name,const float * values,int length)72 extern "C" int WebRtcDataLog_InsertArray_float(const char* table_name,
73                                                const char* column_name,
74                                                const float* values,
75                                                int length) {
76   if (!table_name || !column_name) return -1;
77   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
78 }
79 
WebRtcDataLog_InsertCell_double(const char * table_name,const char * column_name,double value)80 extern "C" int WebRtcDataLog_InsertCell_double(const char* table_name,
81                                                const char* column_name,
82                                                double value) {
83   if (!table_name || !column_name) return -1;
84   return webrtc::DataLog::InsertCell(table_name, column_name, value);
85 }
86 
WebRtcDataLog_InsertArray_double(const char * table_name,const char * column_name,const double * values,int length)87 extern "C" int WebRtcDataLog_InsertArray_double(const char* table_name,
88                                                 const char* column_name,
89                                                 const double* values,
90                                                 int length) {
91   if (!table_name || !column_name) return -1;
92   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
93 }
94 
WebRtcDataLog_InsertCell_int32(const char * table_name,const char * column_name,int32_t value)95 extern "C" int WebRtcDataLog_InsertCell_int32(const char* table_name,
96                                               const char* column_name,
97                                               int32_t value) {
98   if (!table_name || !column_name) return -1;
99   return webrtc::DataLog::InsertCell(table_name, column_name, value);
100 }
101 
WebRtcDataLog_InsertArray_int32(const char * table_name,const char * column_name,const int32_t * values,int length)102 extern "C" int WebRtcDataLog_InsertArray_int32(const char* table_name,
103                                                const char* column_name,
104                                                const int32_t* values,
105                                                int length) {
106   if (!table_name || !column_name) return -1;
107   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
108 }
109 
WebRtcDataLog_InsertCell_uint32(const char * table_name,const char * column_name,uint32_t value)110 extern "C" int WebRtcDataLog_InsertCell_uint32(const char* table_name,
111                                                const char* column_name,
112                                                uint32_t value) {
113   if (!table_name || !column_name) return -1;
114   return webrtc::DataLog::InsertCell(table_name, column_name, value);
115 }
116 
WebRtcDataLog_InsertArray_uint32(const char * table_name,const char * column_name,const uint32_t * values,int length)117 extern "C" int WebRtcDataLog_InsertArray_uint32(const char* table_name,
118                                                 const char* column_name,
119                                                 const uint32_t* values,
120                                                 int length) {
121   if (!table_name || !column_name) return -1;
122   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
123 }
124 
WebRtcDataLog_InsertCell_int64(const char * table_name,const char * column_name,int64_t value)125 extern "C" int WebRtcDataLog_InsertCell_int64(const char* table_name,
126                                               const char* column_name,
127                                               int64_t value) {
128   if (!table_name || !column_name) return -1;
129   return webrtc::DataLog::InsertCell(table_name, column_name, value);
130 }
131 
WebRtcDataLog_InsertArray_int64(const char * table_name,const char * column_name,const int64_t * values,int length)132 extern "C" int WebRtcDataLog_InsertArray_int64(const char* table_name,
133                                                const char* column_name,
134                                                const int64_t* values,
135                                                int length) {
136   if (!table_name || !column_name) return -1;
137   return webrtc::DataLog::InsertCell(table_name, column_name, values, length);
138 }
139 
WebRtcDataLog_NextRow(const char * table_name)140 extern "C" int WebRtcDataLog_NextRow(const char* table_name) {
141   if (!table_name) return -1;
142   return webrtc::DataLog::NextRow(table_name);
143 }
144