aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StopDebugLogResponse.pb-c.c
blob: 7a885594e97d299ea1637e909f580003716f3a6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: StopDebugLogResponse.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "StopDebugLogResponse.pb-c.h"
void   stop_debug_log_response__init
                     (StopDebugLogResponse         *message)
{
  static const StopDebugLogResponse init_value = STOP_DEBUG_LOG_RESPONSE__INIT;
  *message = init_value;
}
size_t stop_debug_log_response__get_packed_size
                     (const StopDebugLogResponse *message)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t stop_debug_log_response__pack
                     (const StopDebugLogResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t stop_debug_log_response__pack_to_buffer
                     (const StopDebugLogResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
StopDebugLogResponse *
       stop_debug_log_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (StopDebugLogResponse *)
     protobuf_c_message_unpack (&stop_debug_log_response__descriptor,
                                allocator, len, data);
}
void   stop_debug_log_response__free_unpacked
                     (StopDebugLogResponse *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
#define stop_debug_log_response__field_descriptors NULL
#define stop_debug_log_response__field_indices_by_name NULL
#define stop_debug_log_response__number_ranges NULL
const ProtobufCMessageDescriptor stop_debug_log_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "StopDebugLogResponse",
  "StopDebugLogResponse",
  "StopDebugLogResponse",
  "",
  sizeof(StopDebugLogResponse),
  0,
  stop_debug_log_response__field_descriptors,
  stop_debug_log_response__field_indices_by_name,
  0,  stop_debug_log_response__number_ranges,
  (ProtobufCMessageInit) stop_debug_log_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
>, String tag) { Folder = folder; Tag = tag; Directory.CreateDirectory(Folder); Enabled = true; _writeCount = 0; MaxFileSizeLimit = 1000000 * 10; //10 MB } public SessionFileLogger() : this(DefaultLogsFolder, Path.GetFileNameWithoutExtension(AppDomain.CurrentDomain.FriendlyName)) { } #endregion #region Public Methods /// <summary> /// Creates the session. Only one file should be for session log, so removed old file and create a new file. /// </summary> public void CreateSession() { _writeCount = 0; RemoveOldLogFile(); LogFile = CreateLogFileName(); _inInSession = true; } /// <summary> /// Ends the session. Set flag _inInSession to false. /// </summary> public void EndSession() { _inInSession = false; } /// <summary> /// Called when write to session log file. /// </summary> /// <param name="output">The output.</param> public void OnLog(LogItemBase output) { if (_inInSession) { try { if (!File.Exists(LogFile) || (++_writeCount > FILE_SIZE_CHECK_COUNT && new FileInfo(LogFile).Length > MaxFileSizeLimit)) { CreateSession(); } File.AppendAllText(LogFile, output.ToString() + Environment.NewLine); } catch (Exception ex) { Debug.WriteLine($"Error Writing To Session Log File!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n{ex.ToString()}"); } } } #endregion #region Private Methods /// <summary> /// Creates the name of the log file. /// </summary> /// <returns></returns> private String CreateLogFileName() { return Path.Combine(Folder, string.Format("{1}-{0:dd-MM-yyyy_HH-mm-ss}{2}.log", DateTime.Now, Tag, FILE_SESSION_EXTENSION)); } /// <summary> /// Delete the old log file if is existed. /// </summary> private void RemoveOldLogFile() { try { if (Directory.Exists(Folder)) { string[] fileEntries = Directory.GetFiles(Folder, "*.log"); foreach (string fileName in fileEntries) { try { File.Delete(fileName); } catch (Exception ex) { Debug.WriteLine(ex); } } } } catch (Exception ex) { Debug.WriteLine(ex); } } #endregion } }