2012-06-27 18:43:34 +02:00
|
|
|
#ifndef CIB_H
|
|
|
|
#define CIB_H
|
|
|
|
|
|
|
|
namespace icinga
|
|
|
|
{
|
|
|
|
|
|
|
|
enum InformationType
|
|
|
|
{
|
|
|
|
CIB_Configuration = 1<<0,
|
|
|
|
CIB_ProgramStatus = 1<<1,
|
|
|
|
CIB_ServiceStatus = 1<<2
|
|
|
|
};
|
|
|
|
|
2012-07-02 19:09:45 +02:00
|
|
|
class I2_CIB_API CIB
|
2012-06-27 18:43:34 +02:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
static void RequireInformation(InformationType type);
|
2012-07-02 12:34:54 +02:00
|
|
|
static int GetInformationTypes(void);
|
2012-06-27 18:43:34 +02:00
|
|
|
|
2012-07-02 12:34:54 +02:00
|
|
|
static void UpdateTaskStatistics(long tv, int num);
|
2012-06-29 12:18:50 +02:00
|
|
|
static int GetTaskStatistics(long timespan);
|
|
|
|
|
2012-07-03 14:18:46 +02:00
|
|
|
static boost::signal<void (const ServiceStatusMessage&)> OnServiceStatusUpdate;
|
|
|
|
|
2012-06-27 18:43:34 +02:00
|
|
|
private:
|
|
|
|
static int m_Types;
|
|
|
|
|
2012-06-29 12:18:50 +02:00
|
|
|
static Ringbuffer m_TaskStatistics;
|
2012-06-27 18:43:34 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif /* CIB_H */
|