#ifndef __LOGGER_HXX
#define __LOGGER_HXX 1
-#ifndef __cplusplus
-# error This library requires C++
-#endif
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <iostream>
+#include <iosfwd>
#include <vector>
#include <simgear/compiler.h>
-#include <simgear/debug/logstream.hxx>
-#include <simgear/misc/exception.hxx>
+#include <simgear/structure/subsystem_mgr.hxx>
#include <simgear/props/props.hxx>
-SG_USING_STD(ostream);
-SG_USING_STD(vector);
-
-#include "fgfs.hxx"
-
-
/**
* Log any property values to any number of CSV files.
*/
-class FGLogger : public FGSubsystem
+class FGLogger : public SGSubsystem
{
public:
FGLogger ();
virtual ~FGLogger ();
- // Implementation of FGSubsystem
+ // Implementation of SGSubsystem
virtual void init ();
virtual void reinit ();
virtual void bind ();
struct Log {
Log ();
virtual ~Log ();
- vector<SGPropertyNode *> nodes;
- ostream * output;
+ std::vector<SGPropertyNode_ptr> nodes;
+ std::ostream * output;
long interval_ms;
double last_time_ms;
char delimiter;
};
- vector<Log> _logs;
+ std::vector<Log> _logs;
};