diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 1999-10-27 00:56:38 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 1999-10-27 00:56:38 +0000 |
commit | a561260fdab6fed8b474e89f797c0e64eefc4684 (patch) | |
tree | 60333681c40ddcaf6a39c782d713d94143aaa6b7 /include/asterisk/channel_pvt.h | |
parent | 43ddba956a94b7316dd0b3fdb031b2e1b794941a (diff) |
Version 0.1.0 from FTP
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include/asterisk/channel_pvt.h')
-rwxr-xr-x | include/asterisk/channel_pvt.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/include/asterisk/channel_pvt.h b/include/asterisk/channel_pvt.h new file mode 100755 index 000000000..6628e9d5f --- /dev/null +++ b/include/asterisk/channel_pvt.h @@ -0,0 +1,51 @@ +/* + * Asterisk -- A telephony toolkit for Linux. + * + * Private channel definitions for channel implementations only. + * + * Copyright (C) 1999, Adtran Inc. and Linux Support Services, LLC + * + * Mark Spencer <markster@linux-support.net> + * + * This program is free software, distributed under the terms of + * the GNU General Public License + */ + +#ifndef _ASTERISK_CHANNEL_PVT_H +#define _ASTERISK_CHANNEL_PVT_H + +#include <asterisk/channel.h> + +#if defined(__cplusplus) || defined(c_plusplus) +extern "C" { +#endif + + +struct ast_channel_pvt { + /* Private data used by channel backend */ + void *pvt; + /* Send a literal DTMF digit */ + int (*send_digit)(struct ast_channel *chan, char digit); + /* Call a given phone number (address, etc), but don't + take longer than timeout seconds to do so. */ + int (*call)(struct ast_channel *chan, char *addr, int timeout); + /* Hangup (and possibly destroy) the channel */ + int (*hangup)(struct ast_channel *chan); + /* Answer the line */ + int (*answer)(struct ast_channel *chan); + /* Read a frame, in standard format */ + struct ast_frame * (*read)(struct ast_channel *chan); + /* Write a frame, in standard format */ + int (*write)(struct ast_channel *chan, struct ast_frame *frame); +}; + +/* Create a channel structure */ +struct ast_channel *ast_channel_alloc(); +#define ast_channel_free(a) free(a) + +#if defined(__cplusplus) || defined(c_plusplus) +} +#endif + + +#endif |