From dfe24d63ccca74c1093349e8b9e9977ac0d82278 Mon Sep 17 00:00:00 2001
From: wu_xinjun <bent20140204@outlook.com>
Date: 星期三, 16 二月 2022 17:18:30 +0800
Subject: [PATCH] auto setting env and getting udp data

---
 src/Microwave/demo/MicroWaveUDPServerTest.py |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/src/Microwave/demo/MicroWaveUDPServerTest.py b/src/Microwave/demo/MicroWaveUDPServerTest.py
index e35b64e..ddc2dd3 100644
--- a/src/Microwave/demo/MicroWaveUDPServerTest.py
+++ b/src/Microwave/demo/MicroWaveUDPServerTest.py
@@ -1,13 +1,37 @@
 import sys
 import time
 import os
+from socketserver import BaseRequestHandler, UDPServer
 
 # add python path of microwave to sys.path
 microwave_path = os.path.join(__file__, *(['..'] * 3))
 microwave_path = os.path.abspath(microwave_path)
 sys.path.insert(0, microwave_path)
 
-from microwave.servers import MicroWaveUDPServer
+from microwave.servers import MicroWaveReceiver
+
+
+class MicroWaveRequestHandlertest(BaseRequestHandler):
+    def handle(self):
+        # Get message and client socket
+        buf, _ = self.request
+        receiver = self.server.Receiver
+        receiver.AddBuf(buf)
+        if receiver.DataFrameReady:
+            # data frame ready
+            frame_number = receiver.Header.FrameNumber
+            bin_name = os.path.join(self.server.OutputFolder, "{}.bin".format(frame_number))
+            print("Frame {} ready".format(frame_number))
+            with open(bin_name, "wb") as bin_file:
+                bin_file.write(receiver.DataFrame)
+
+
+class MicroWaveUDPServertest(UDPServer):
+    def __init__(self, server_address, output_folder):
+        super().__init__(server_address, MicroWaveRequestHandlertest)
+        # create receiver instance
+        self.Receiver = MicroWaveReceiver()
+        self.OutputFolder = output_folder
 
 if __name__ == '__main__':
     if len(sys.argv) == 2:
@@ -18,7 +42,7 @@
     # host = '192.168.2.65'
     host = ''
     port = 9911
-    server = MicroWaveUDPServer((host, port), output_folder)
+    server = MicroWaveUDPServertest((host, port), output_folder)
     server.packed_count = 0
     print(time.asctime(),'Server started on port', port)
     print('....')

--
Gitblit v1.9.1