Thanks for following up! Yes, the main_program does not directly invoke OpenSees to record but writes SAM files with record-requesting messages that are then parsed by standardEarthquakeEDP and OpenSeesPreprocessor to add recording commands in a model script. And the model script is called by OpenSees later to run the simulation and saving the requested EDP recordings.
Regards,
Kuanshi