ladishd: Basic recent projects functionality
[ladish.git] / daemon / room_internal.h
blobe01a071fe4d53b9e84727e848fa6fadc0a027930
1 /* -*- Mode: C ; c-basic-offset: 2 -*- */
2 /*
3 * LADI Session Handler (ladish)
5 * Copyright (C) 2010 Nedko Arnaudov <nedko@arnaudov.name>
7 **************************************************************************
8 * This file contains internal declarations used by the room object implementation
9 **************************************************************************
11 * LADI Session Handler is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * LADI Session Handler is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with LADI Session Handler. If not, see <http://www.gnu.org/licenses/>
23 * or write to the Free Software Foundation, Inc.,
24 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
27 #ifndef ROOM_INTERNAL_H__FAF5B68F_E419_442A_8F9B_C729BAC00422__INCLUDED
28 #define ROOM_INTERNAL_H__FAF5B68F_E419_442A_8F9B_C729BAC00422__INCLUDED
30 #include "room.h"
32 #define LADISH_PROJECT_FILENAME "/ladish-project.xml"
34 struct ladish_room
36 struct list_head siblings;
37 uuid_t uuid;
38 char * name;
39 bool template;
41 /* these are not valid for templates */
42 uuid_t template_uuid;
43 ladish_graph_handle owner;
44 unsigned int index;
45 char * object_path;
46 dbus_object_path dbus_object;
47 uint64_t version;
48 ladish_graph_handle graph;
49 ladish_app_supervisor_handle app_supervisor;
50 ladish_client_handle client;
51 bool started;
53 bool project_unloading;
54 uuid_t project_uuid;
55 char * project_dir;
56 char * project_name;
59 void ladish_room_emit_project_properties_changed(struct ladish_room * room_ptr);
61 #endif /* #ifndef ROOM_INTERNAL_H__FAF5B68F_E419_442A_8F9B_C729BAC00422__INCLUDED */