summaryrefslogtreecommitdiff
path: root/src/privatecore.h
blob: 3f0ef0170e87798f9359bc2ee9a2b70d51ac1c86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#ifndef _PRIVATECORE_H
#define _PRIVATECORE_H

#include <compiz-core.h>
#include <compcore.h>

class PrivateCore {

    public:
	PrivateCore (CompCore *core);
	~PrivateCore ();

	short int
	watchFdEvents (CompWatchFdHandle handle);

	int
	doPoll (int timeout);

	void
	handleTimers (struct timeval *tv);

	void addTimer (CompCore::Timer *timer);
	void removeTimer (CompCore::Timer *timer);


    public:
	CompCore    *core;
	CompDisplay *displays;

	std::list<CompFileWatch *>  fileWatch;
	CompFileWatchHandle         lastFileWatchHandle;

	std::list<CompCore::Timer *> timers;
	struct timeval               lastTimeout;

	std::list<CompWatchFd *> watchFds;
	CompWatchFdHandle        lastWatchFdHandle;
	struct pollfd            *watchPollFds;
	int                      nWatchFds;
};

#endif