DebugInstanceListener.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include "ClientMarker.hpp"
4 #include "Instance.hpp"
5 
6 namespace iv
7 {
8 
9 //class Instance;
10 class ClientMarker;
11 
13 {
14 public:
15  DebugInstanceListener( Instance * inst, InstanceSystem * target );
17 
18  Instance * instance() const;
19 
20  // instances
21  virtual void InstanceCreated( Instance * ) {}
22  virtual void InstanceDestroyed( Instance * ) {}
23 
24  // clients
25  virtual void ClientCreated( ClientMarker const * ) {}
26  virtual void ClientDestroyed( ClientMarker const * ) {}
27 
28  // logging
29  virtual void ClientLog( ClientMarker const * marker, SrcInfo const & info, LogId id, std::string const & message ) {}
30  virtual bool ClientLogEnabled( ClientMarker const * marker, LogId id ) { return false; }
31 
32  virtual void SystemLog( System const *, SrcInfo const & info, LogId id, std::string const & message ){}
33  virtual bool SystemLogEnabled( System const *, LogId id ){ return false; }
34 
35 private:
36  Instance * inst;
37  InstanceSystem * os;
38 };
39 
40 }