aboutsummaryrefslogtreecommitdiffstats
path: root/include/asterisk/channel_pvt.h
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>1999-10-27 00:56:38 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>1999-10-27 00:56:38 +0000
commita561260fdab6fed8b474e89f797c0e64eefc4684 (patch)
tree60333681c40ddcaf6a39c782d713d94143aaa6b7 /include/asterisk/channel_pvt.h
parent43ddba956a94b7316dd0b3fdb031b2e1b794941a (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-xinclude/asterisk/channel_pvt.h51
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