aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2025-07-29 19:53:35 +0300
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2025-07-29 19:53:35 +0300
commita802fe75f9538371004f1833e69a69b798892d0c (patch)
tree9d4612cf4dd6c543650b9ee10599db4b30782391 /Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs
parent72c6399ec345ec26bd7f79651667ffa585474919 (diff)
downloadTango-a802fe75f9538371004f1833e69a69b798892d0c.tar.gz
Tango-a802fe75f9538371004f1833e69a69b798892d0c.zip
Telemetry
Diffstat (limited to 'Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs')
-rw-r--r--Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs36
1 files changed, 36 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs b/Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs
new file mode 100644
index 000000000..2197bac99
--- /dev/null
+++ b/Software/Visual_Studio/Tango.Telemetry/TelemetryInMemoryQueueManager.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Tango.Core;
+
+namespace Tango.Telemetry
+{
+ public class TelemetryInMemoryQueueManager : ITelemetryQueueManager
+ {
+ private ProducerConsumerQueue<TelemetryPublishPackage> _queue;
+
+ public int Count { get { return _queue.Count; } }
+
+ public TelemetryInMemoryQueueManager()
+ {
+ _queue = new ProducerConsumerQueue<TelemetryPublishPackage>();
+ }
+
+ public TelemetryPublishPackage Dequeue()
+ {
+ return _queue.BlockDequeue();
+ }
+
+ public void Enqueue(TelemetryPublishPackage package)
+ {
+ _queue.BlockEnqueue(package);
+ }
+
+ public void Clear()
+ {
+ _queue = new ProducerConsumerQueue<TelemetryPublishPackage>();
+ }
+ }
+}