JACK-AUDIO-CONNECTION-KIT
0.122.0
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
jack
session.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2001 Paul Davis
3
Copyright (C) 2004 Jack O'Quin
4
Copyright (C) 2010 Torben Hohn
5
6
This program is free software; you can redistribute it and/or modify
7
it under the terms of the GNU Lesser General Public License as published by
8
the Free Software Foundation; either version 2.1 of the License, or
9
(at your option) any later version.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU Lesser General Public License for more details.
15
16
You should have received a copy of the GNU Lesser General Public License
17
along with this program; if not, write to the Free Software
18
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19
*/
20
21
#ifndef __jack_session_h__
22
#define __jack_session_h__
23
24
#ifdef __cplusplus
25
extern
"C"
{
26
#endif
27
28
#include <
jack/types.h
>
29
#include <jack/weakmacros.h>
30
46
enum
JackSessionEventType
{
57
JackSessionSave
= 1,
58
64
JackSessionSaveAndQuit
= 2,
65
75
JackSessionSaveTemplate
= 3
76
};
77
78
typedef
enum
JackSessionEventType
jack_session_event_type_t
;
79
83
enum
JackSessionFlags
{
87
JackSessionSaveError
= 0x01,
88
92
JackSessionNeedTerminal
= 0x02
93
};
94
98
typedef
enum
JackSessionFlags
jack_session_flags_t
;
99
100
struct
_jack_session_event
{
104
jack_session_event_type_t
type
;
105
112
const
char
*
session_dir
;
113
120
const
char
*
client_uuid
;
121
135
char
*
command_line
;
136
140
jack_session_flags_t
flags
;
141
145
uint32_t
future
;
146
};
147
148
typedef
struct
_jack_session_event
jack_session_event_t
;
149
162
typedef
void (*
JackSessionCallback
)(
jack_session_event_t
*event,
163
void
*arg);
164
175
int
jack_set_session_callback
(
jack_client_t
*
client
,
176
JackSessionCallback
session_callback,
177
void
*arg) JACK_WEAK_EXPORT;
178
188
int
jack_session_reply
(
jack_client_t
*
client
,
189
jack_session_event_t
*event) JACK_WEAK_EXPORT;
190
191
197
void
jack_session_event_free
(
jack_session_event_t
*event) JACK_WEAK_EXPORT;
198
199
206
char
*
jack_client_get_uuid
(
jack_client_t
*
client
) JACK_WEAK_EXPORT;
207
218
typedef
struct
{
219
const
char
*
uuid
;
220
const
char
*
client_name
;
221
const
char
*
command
;
222
jack_session_flags_t
flags
;
223
}
jack_session_command_t
;
224
232
jack_session_command_t
*
jack_session_notify
(
233
jack_client_t
*
client
,
234
const
char
*target,
235
jack_session_event_type_t type,
236
const
char
*path) JACK_WEAK_EXPORT;
237
241
void
jack_session_commands_free
(
jack_session_command_t
*cmds) JACK_WEAK_EXPORT;
242
247
char
*
jack_get_uuid_for_client_name
(
jack_client_t
*
client
,
248
const
char
*client_name) JACK_WEAK_EXPORT;
249
256
char
*
jack_get_client_name_by_uuid
(
jack_client_t
*
client
,
257
const
char
*client_uuid ) JACK_WEAK_EXPORT;
258
268
int
269
jack_reserve_client_name
(
jack_client_t
*
client
,
270
const
char
*name,
271
const
char
*uuid) JACK_WEAK_EXPORT;
272
279
int
280
jack_client_has_session_callback
(
jack_client_t
*
client
,
const
char
*client_name) JACK_WEAK_EXPORT;
281
286
#ifdef __cplusplus
287
}
288
#endif
289
#endif
290
Generated on Tue Oct 16 2012 22:01:01 for JACK-AUDIO-CONNECTION-KIT by
1.8.1.2