// logger.hxx - log properties. // Written by David Megginson, started 2002. // // This file is in the Public Domain, and comes with no warranty. #ifndef __LOGGER_HXX #define __LOGGER_HXX 1 #include #include #include #include #include #include /** * Log any property values to any number of CSV files. */ class FGLogger : public SGSubsystem { public: // Implementation of SGSubsystem virtual void init (); virtual void reinit (); virtual void bind (); virtual void unbind (); virtual void update (double dt); private: /** * A single instance of a log file (the logger can contain many). */ struct Log { Log (); std::vector nodes; std::unique_ptr output; long interval_ms; double last_time_ms; char delimiter; }; std::vector< std::unique_ptr > _logs; }; #endif // __LOGGER_HXX