meta data for this page
  •  

In the main of the daemon:

CDaemon()

-New Instance of the deamon

'CDeviceStorage::GetInstance' - Make sure that there is only one instance of daemon running

'getpid()' - Daemon pid is used internally for communication

MakeDaemon()

- This finally creates the daemon process

'CreateLocalSocket()' - Socket for the library

'LoadPlugins()' - Loads the necessary plugins (should we be able to define what we want to be loaded)

StartPlugins()

- Starts the communication interfaces, one at the time

'Plugin.Start()' - Runs start function for each Plugin loaded

- Creates a thread (threadstarter) for inquiring devices in the network(s)

'Plugin.Advert()' - Runs advertisment function Advert() for each Plugin loaded

- Adds service into the peerhood database

-Creates a thread (advertstarter) for advertisement purposes. Whenever service request arrives, this thread answers to that and tells what services peerhood offers (has registered).

daemon.Run()

- Main loop of the PeerHood Daemon. Adds clients and performs commands of the clients (GET_DEVICELIST, INSERT_SERVICE, REMOVE_SERVICE, GET_LOCAL_SERVICELIST). Other functionalities can be added later on.