Add chain home processing information and cleared some issues
This commit is contained in:
BIN
.work_note2.swp
Normal file
BIN
.work_note2.swp
Normal file
Binary file not shown.
19
CLAUDE.md
19
CLAUDE.md
@@ -127,7 +127,6 @@ struct target_data_structure {
|
|||||||
std::string registration; // will be null for no registration
|
std::string registration; // will be null for no registration
|
||||||
float length; // in meters
|
float length; // in meters
|
||||||
float beam; // in meters
|
float beam; // in meters
|
||||||
float altitude; // in meters
|
|
||||||
int vessel_type; // AIS type code or aircraft type
|
int vessel_type; // AIS type code or aircraft type
|
||||||
uint32_t mmsi; // AIS unique identifier; ICAO hex address for aircraft
|
uint32_t mmsi; // AIS unique identifier; ICAO hex address for aircraft
|
||||||
float course; // course over ground, degrees, based on true north
|
float course; // course over ground, degrees, based on true north
|
||||||
@@ -151,8 +150,8 @@ struct target_data_to_shader_structure {
|
|||||||
float reflectivity; // derivied from vessel_type (see table below)
|
float reflectivity; // derivied from vessel_type (see table below)
|
||||||
float height_estimate; // derived from vessel_type (see table below)
|
float height_estimate; // derived from vessel_type (see table below)
|
||||||
float noiseglint; // derived from vessel_type (see table below)
|
float noiseglint; // derived from vessel_type (see table below)
|
||||||
int32_t police_boat // this indicates that the target is for the roaming police boat. 1 = police boat
|
int32_t police_boat; // this indicates that the target is for the roaming police boat. 1 = police boat
|
||||||
int type // target type (0 for boat 1 for aircraft)
|
int type; // target type (0 for boat 1 for aircraft)
|
||||||
};
|
};
|
||||||
|
|
||||||
Please note that height and material are not included in the data received from the simulator
|
Please note that height and material are not included in the data received from the simulator
|
||||||
@@ -997,8 +996,8 @@ Here is the data items for the table in the Postgres database:
|
|||||||
1. float length
|
1. float length
|
||||||
2. float beam
|
2. float beam
|
||||||
3. int32_t material - 1 for metal, 2 for wood, 3 for fiberglass
|
3. int32_t material - 1 for metal, 2 for wood, 3 for fiberglass
|
||||||
4. timestamp elapsed_seconds
|
4. time_t timestamp - use to check to see if this has already been processed
|
||||||
5. binary may_need_update (this if a randome value is applied to any part of the target
|
5. int32_t may_need_update (this if a randome value is applied to any part of the target
|
||||||
and that the user may want to update the database. This
|
and that the user may want to update the database. This
|
||||||
will not force the user to do the update, a later
|
will not force the user to do the update, a later
|
||||||
database editing program will use this.
|
database editing program will use this.
|
||||||
@@ -1105,7 +1104,7 @@ struct RadarMaterialProfile {
|
|||||||
float noiseGlint; // simulated signal scintillation
|
float noiseGlint; // simulated signal scintillation
|
||||||
};
|
};
|
||||||
|
|
||||||
RadarMaterialProfile getMaterialProfile(int aisTypeCode) {
|
RadarMaterialProfile getMaterialProfile(int vessel_type) {
|
||||||
RadarMaterialProfile profile;
|
RadarMaterialProfile profile;
|
||||||
|
|
||||||
switch(vessel_type) { // vessel_type is in the target_data_structure
|
switch(vessel_type) { // vessel_type is in the target_data_structure
|
||||||
@@ -1173,6 +1172,12 @@ Data synchronization between threads must be managed explicitly using std::mutex
|
|||||||
and the marine traffic control radars. It will already have the longitude and latitude of the
|
and the marine traffic control radars. It will already have the longitude and latitude of the
|
||||||
police boat radar as it will be processing the location of the police boat radar from the
|
police boat radar as it will be processing the location of the police boat radar from the
|
||||||
simulator.
|
simulator.
|
||||||
|
8. Instructions regarding chain home. If the current active radar is chain home, we
|
||||||
|
need to drop all boat target and any target that is not within 300 miles from the
|
||||||
|
latitude and longitude of the chain home radar station. Furthermore all traffic from the
|
||||||
|
raspberry PI's need to be discarded for chain home. All chain home target traffic will be
|
||||||
|
beyond range for all of the other radars; therefore all such targets shall be discarded if
|
||||||
|
the active radar is not chain home.
|
||||||
7. Critical Section: Assert a std::mutex to gain safe writing access to the
|
7. Critical Section: Assert a std::mutex to gain safe writing access to the
|
||||||
double-buffered array driving the SSBO, copy the structural contents, and
|
double-buffered array driving the SSBO, copy the structural contents, and
|
||||||
clear the mutex immediately. May I suggest that this activity be performed
|
clear the mutex immediately. May I suggest that this activity be performed
|
||||||
@@ -1181,7 +1186,7 @@ Data synchronization between threads must be managed explicitly using std::mutex
|
|||||||
and the simulator may not updata every screen update. If that's the case, the
|
and the simulator may not updata every screen update. If that's the case, the
|
||||||
traffic cop will not do anything. Also note that the SSBO maximum target capability
|
traffic cop will not do anything. Also note that the SSBO maximum target capability
|
||||||
will be 200. Oldest targets shall not be sent to the SSBO if the limit is reached.
|
will be 200. Oldest targets shall not be sent to the SSBO if the limit is reached.
|
||||||
Lets include the maximum in memory copy of the database and SSBO shouse be
|
Lets include the maximum in memory copy of the database and SSBO should be
|
||||||
a value in the settings.h file.
|
a value in the settings.h file.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user