Fledge
An open source edge computing platform for industrial users
pipeline_debugger.h
1 #ifndef _PIPELINE_DEBUGGER_H
2 #define _PIPELINE_DEBUGGER_H
3 /*
4  * Fledge filter pipeline debugger.
5  *
6  * Copyright (c) 2025 Dianomic Systems
7  *
8  * Released under the Apache 2.0 Licence
9  *
10  * Author: Mark Riddoch
11  */
12 #include <reading_set.h>
13 #include <reading.h>
14 #include <reading_circularbuffer.h>
15 #include <mutex>
16 #include <vector>
17 #include <memory>
18 
23  public:
26  typedef enum debuggerActions
27  {
28  NoAction,
29  Block
30  } DebuggerActions;
31  DebuggerActions process(ReadingSet *readingSet);
32  void setBuffer(unsigned int size);
33  void clearBuffer();
34  std::vector<std::shared_ptr<Reading>>
35  fetchBuffer();
36  private:
37  ReadingCircularBuffer *m_buffer;
38  std::mutex m_bufferMutex;
39 
40 };
41 
42 #endif
PipelineDebugger::process
DebuggerActions process(ReadingSet *readingSet)
Process a reading set as it flows through the pipeline.
Definition: pipeline_debugger.cpp:38
PipelineDebugger::~PipelineDebugger
~PipelineDebugger()
Destructor for the pipeline element debugger.
Definition: pipeline_debugger.cpp:24
PipelineDebugger::clearBuffer
void clearBuffer()
Remove the circular buffer of readings and stop the process of storing future readings.
Definition: pipeline_debugger.cpp:67
ReadingSet
Reading set class.
Definition: reading_set.h:26
PipelineDebugger::fetchBuffer
std::vector< std::shared_ptr< Reading > > fetchBuffer()
Fetch the current contents of the circular buffer.
Definition: pipeline_debugger.cpp:84
PipelineDebugger::setBuffer
void setBuffer(unsigned int size)
Set the size of the circular buffer used to buffer the data flowing in the pipeline.
Definition: pipeline_debugger.cpp:53
ReadingCircularBuffer
A circular buffer of readings.
Definition: reading_circularbuffer.h:24
PipelineDebugger::PipelineDebugger
PipelineDebugger()
Constructor for the pipeline element debugger.
Definition: pipeline_debugger.cpp:17
PipelineDebugger
The debugger class for elements in a pipeline.
Definition: pipeline_debugger.h:22