diff --git a/CLAUDE.md b/CLAUDE.md index 7cd006b..de4dee5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -59,6 +59,12 @@ This is a museum exhibit displaying and providing some interaction of vintage 1940's, 1950's, and 1960's radars. A key objective is to provide interaction with and viewing of radars from that era. +The name of the application (the name of it's executable file) shall be +radar_simulator. Therefore, if you are in the directory in which the executable +is compiled, which in this case would be the build subdirectory of the project +directory, you would type ./radar_simulator, or use a full path name +of {PROJECT_DIR}/build/radar_simulator. + There will be three main areas of the screen. On the right hand side will be the radar scope. @@ -167,7 +173,6 @@ that does not change, we can set that as a constant in each radar's target handl ======================================================== - Individual scope informations 1. Introduction to project. Just text. No scopes. Only one control for entering @@ -175,6 +180,53 @@ Individual scope informations This is a loop type selection If you are in the Introduction, and you touch keyboard 2 for backward, you would go to scope 5, PPI Scope for a boat. + ================================================================= + + The extent of the selection of the scopes by the user, there sill be + a selection of what scopes are to be avaiable to the museum visitor. This + will enable the museum to select what scopes will be available and what scopes + will not be available at all. A script that will invoke the radar simulator + application will need to pass parameters to indicate what will be available. + For example, if the script were to call: + + {PROJECT_DIR}/build/radar_simulator chain_home marine_ascope marine_traffic_ppi + + then only the chain_home, marine_ascope and marine_traffic_ppi will be availablel + but the marine_ppi_on_a_boat will not be available. + + This feature is needed for troubleshooting but also to allow the museum to control + what is available. For example, if the museum is crowded with large school groups, + then they would only have one scope available; so if they did + + {PROJECT_DIR}/build/radar_simulator marine_traffic_ppi + + Only the marine traffic control ppi scope will be available and the scope + selection controls will not be operatable. + + To be clear, the names of the scopes currently being built are: + + 1. chain_home + 2. marine_ascope + 3. marine_traffic_ppi + 4. marine_boat_ppi + + Startup behavior rules based on argument count: + + - No arguments: all four scopes available, Introduction shown first, + navigation keys 1 and 2 are active. + + - Two or more scope names: only those scopes available in the loop, + Introduction shown first, navigation keys 1 and 2 are active. + + - Exactly one scope name: Introduction is suppressed entirely. The + application launches directly into that scope and stays there. + Navigation keys 1 and 2 are disabled. The public will have no + awareness that any other scope exists. This mode is intended for + large groups and high-traffic museum days where staff want to + dedicate the exhibit to one display without contention. + + ==================================================================== + 2. A Scope - sweep on horizontal axis. A pulse will appear for a return. The distance from the left hand side to the pulse is the range. The height of the pulse is the strength of the return signal. The bearing is determined by manual control.