AirControl  1.3.0
Open Source, Modular, and Extensible Flight Simulator For Deep Learning Research
Communicator.OutputHandle Class Reference

Handle outbound request from the TCP socket More...

Inheritance diagram for Communicator.OutputHandle:
Collaboration diagram for Communicator.OutputHandle:

Public Member Functions

void ParseOutput (ref string outputmsg)
 Prepare output object and return json string to be dispatched More...
 
string LogOutput ()
 Just Log output if the entire output is not required More...
 

Detailed Description

Handle outbound request from the TCP socket

Definition at line 15 of file OutputHandle.cs.

Member Function Documentation

◆ LogOutput()

string Communicator.OutputHandle.LogOutput ( )
inline

Just Log output if the entire output is not required

Returns
Prepare output object and return json string to be dispatched

Definition at line 94 of file OutputHandle.cs.

95  {
96  string LogOutput = JsonConvert.SerializeObject(new Logger{
97  Log = StaticLogger.Log,
99  );
100  return LogOutput;
101  }

◆ ParseOutput()

void Communicator.OutputHandle.ParseOutput ( ref string  outputmsg)
inline

Prepare output object and return json string to be dispatched

Returns
Output json string

Definition at line 24 of file OutputHandle.cs.

25  {
26  // To avoid null retun from Screencapture
27  // To not to send the screencapture if `IsCapture` is to `false`, to save bandwidth
28  ref var screencapture = ref StaticOutputSchema.ScreenCapture;
29  if (screencapture == null || StaticCameraSchema.IsCapture == false){
30  screencapture = new byte[0];
31 
32  }
33 
34  // to avoid null retun from Screencapture
35  var lidarPointCloud = StaticOutputSchema.LidarPointCloud;
36  if (lidarPointCloud == null){
37  lidarPointCloud = new float[0];
38  }
39 
40 
41  outputmsg = JsonConvert.SerializeObject(new OutputSchema{
42  BankAngle = StaticOutputSchema.BankAngle,
43  PitchAngle = StaticOutputSchema.PitchAngle,
44  AGL = StaticOutputSchema.AGL,
45  MSL = StaticOutputSchema.MSL,
46  CurrentRPM = StaticOutputSchema.CurrentRPM,
47  MaxRPM = StaticOutputSchema.MaxRPM,
48  MaxPower = StaticOutputSchema.MaxPower,
49  CurrentPower = StaticOutputSchema.CurrentPower,
50  CurrentSpeed = StaticOutputSchema.CurrentSpeed,
51  ScreenCapture = screencapture,
52  LidarPointCloud = lidarPointCloud,
53  Latitude = StaticOutputSchema.Latitude,
54  Longitude = StaticOutputSchema.Longitude,
55  IfCollision = StaticOutputSchema.IfCollision,
56  Reward = StaticOutputSchema.Reward,
57  Counter = StaticOutputSchema.Counter,
58  CollisionObject = StaticOutputSchema.CollisionObject,
59  IsFlying = StaticOutputSchema.IsFlying,
60  IsGrounded = StaticOutputSchema.IsGrounded,
61  IsTaxiing = StaticOutputSchema.IsTaxiing,
62  PosXAbs = StaticOutputSchema.PosXAbs,
63  PosYAbs = StaticOutputSchema.PosYAbs,
64  PosZAbs = StaticOutputSchema.PosZAbs,
65  PosXRel = StaticOutputSchema.PosXRel,
66  PosYRel = StaticOutputSchema.PosYRel,
67  PosZRel = StaticOutputSchema.PosZRel,
68  RotXAbs = StaticOutputSchema.RotXAbs,
69  RotYAbs = StaticOutputSchema.RotYAbs,
70  RotZAbs = StaticOutputSchema.RotZAbs,
71  RotXRel = StaticOutputSchema.RotXRel,
72  RotYRel = StaticOutputSchema.RotYRel,
73  RotZRel = StaticOutputSchema.RotZRel,
74  AngularXVelocity = StaticOutputSchema.AngularXVelocity,
75  AngularYVelocity = StaticOutputSchema.AngularYVelocity,
76  AngularZVelocity = StaticOutputSchema.AngularZVelocity,
77  LinearXVelocity = StaticOutputSchema.LinearXVelocity,
78  LinearYVelocity = StaticOutputSchema.LinearYVelocity,
79  LinearZVelocity = StaticOutputSchema.LinearZVelocity,
80  AngularXAcceleration = StaticOutputSchema.AngularXAcceleration,
81  AngularYAcceleration = StaticOutputSchema.AngularYAcceleration,
82  AngularZAcceleration = StaticOutputSchema.AngularZAcceleration,
83  LinearXAcceleration = StaticOutputSchema.LinearXAcceleration,
84  LinearYAcceleration = StaticOutputSchema.LinearYAcceleration,
85  LinearZAcceleration = StaticOutputSchema.LinearZAcceleration,
86 
88  StaticOutputSchema.Counter ++;
89  }

The documentation for this class was generated from the following file:
Communicator.OutputSchema
Output control class for serialization deserialization
Definition: IOSchema.cs:136
Communicator.PrimitiveToStringConverter
Converting boolena to string while serializing
Definition: IOInit.cs:72
Communicator.OutputHandle.LogOutput
string LogOutput()
Just Log output if the entire output is not required
Definition: OutputHandle.cs:94
Communicator.Logger
Logger class for serialization deserialization
Definition: IOSchema.cs:194