1 #pragma once
2 #include <nlohmann/json.hpp>
3 
4 namespace acceleration_function
5 {
6 // clang-format off
7 
8 enum class AccelerationFunctionType{
9     Invalid,
10     Encryption,
11     Compression,
12     PacketInspection,
13     PacketSwitch,
14     Scheduler,
15     AudioProcessing,
16     VideoProcessing,
17     OEM,
18 };
19 
20 NLOHMANN_JSON_SERIALIZE_ENUM(AccelerationFunctionType, {
21     {AccelerationFunctionType::Invalid, "Invalid"},
22     {AccelerationFunctionType::Encryption, "Encryption"},
23     {AccelerationFunctionType::Compression, "Compression"},
24     {AccelerationFunctionType::PacketInspection, "PacketInspection"},
25     {AccelerationFunctionType::PacketSwitch, "PacketSwitch"},
26     {AccelerationFunctionType::Scheduler, "Scheduler"},
27     {AccelerationFunctionType::AudioProcessing, "AudioProcessing"},
28     {AccelerationFunctionType::VideoProcessing, "VideoProcessing"},
29     {AccelerationFunctionType::OEM, "OEM"},
30 });
31 
32 }
33 // clang-format on
34