aboutsummaryrefslogtreecommitdiff
path: root/gdb/rdi-share/hostchan.h
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>1999-04-16 01:34:07 +0000
committerStan Shebs <shebs@codesourcery.com>1999-04-16 01:34:07 +0000
commit071ea11e85eb9d529cc5eb3d35f6247466a21b99 (patch)
tree5deda65b8d7b04d1f4cbc534c3206d328e1267ec /gdb/rdi-share/hostchan.h
parent1730ec6b1848f0f32154277f788fb29f88d8475b (diff)
downloadgdb-071ea11e85eb9d529cc5eb3d35f6247466a21b99.zip
gdb-071ea11e85eb9d529cc5eb3d35f6247466a21b99.tar.gz
gdb-071ea11e85eb9d529cc5eb3d35f6247466a21b99.tar.bz2
Initial creation of sourceware repository
Diffstat (limited to 'gdb/rdi-share/hostchan.h')
-rw-r--r--gdb/rdi-share/hostchan.h308
1 files changed, 0 insertions, 308 deletions
diff --git a/gdb/rdi-share/hostchan.h b/gdb/rdi-share/hostchan.h
deleted file mode 100644
index 44563a6..0000000
--- a/gdb/rdi-share/hostchan.h
+++ /dev/null
@@ -1,308 +0,0 @@
-/*
- * Copyright (C) 1995 Advanced RISC Machines Limited. All rights reserved.
- *
- * This software may be freely used, copied, modified, and distributed
- * provided that the above copyright notice is preserved in all copies of the
- * software.
- */
-
-/* -*-C-*-
- *
- * $Revision$
- * $Date$
- *
- */
-#ifndef angsd_hostchan_h
-#define angsd_hostchan_h
-
-/* If under Cygwin, provide backwards compatibility with older
- Cygwin compilers that don't define the current cpp define. */
-#ifdef __CYGWIN32__
-#ifndef __CYGWIN__
-#define __CYGWIN__
-#endif
-#endif
-
-/* struct timeval */
-#if defined(__unix) || defined(__CYGWIN32__)
-# include <sys/time.h>
-#else
-# include "winsock.h"
-# include "time.h"
-#endif
-
-#include "chandefs.h"
-#include "adperr.h"
-#include "devsw.h"
-
-/*
- * asynchronous processing modes
- */
-enum AsyncMode
-{
- async_block_on_nothing,
- async_block_on_read,
- async_block_on_write
-};
-
-#ifndef __cplusplus
-typedef enum AsyncMode AsyncMode;
-#endif
-
-/*
- * prototype for channels callback function
- */
-typedef void (*ChannelCallback)(Packet *packet, void *state);
-
-/*
- * Function: Adp_initSeq
- * Purpose: initialise the channel protocol and sequence numbers
- *
- * Params: none
- *
- * Returns: Nothing
- */
-extern void Adp_initSeq(void);
-
-/*
- * Function: Adp_addToQueue
- * Purpose: chain a Packet to the end of a linked list of such structures
- *
- * Params:
- * In/Out: head Head of the linked list
- *
- * newpkt Packet to be chained onto the list
- *
- * Returns: Nothing
- */
-extern void Adp_addToQueue(Packet **head, Packet *newpkt);
-
-/*
- * Function: removeFromQueue
- * Purpose: remove a Packet from the head of a linked list of such structures
- *
- * Params:
- * In/Out: head Head of the linked list
- *
- * Returns: Old head from the linked list
- *
- * Post-conditions: Second element in the list will be the new head.
- */
-
-extern Packet *Adp_removeFromQueue(Packet **head);
-
-/*
- * Function: Adp_OpenDevice
- * Purpose: Open a device to use for channels communication. This is a
- * very thin veneer to the device drivers: what hostchan.c
- * will do is call DeviceMatch for each device driver until it
- * finds a driver that will accept name and arg, then call
- * DeviceOpen for that device.
- *
- * Pre-conditions: No previous open is still active
- *
- * Params:
- * Input: name Identifies which device to open. This can either be
- * a host specific identifier (e.g. "/dev/ttya",
- * "COM1:"), or a number which is used to refer to
- * `standard' interfaces, so "1" would be the first host
- * interface, "2" the second, and so on.
- *
- * arg Driver specific arguments. For example, some serial
- * drivers accept speed and control arguments such as
- * "9600" or "19200/NO_BREAK". These arguments are
- * completely free-form: it is the individual drivers
- * which do the necessary interpretation.
- *
- * heartbeat_on Incicates if the heartbeat is configured to be
- * used or not, true if it is, false otherwise
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_known,
- * adp_device_open_failed
- * adp_device_already_open
- */
-AdpErrs Adp_OpenDevice(const char *name, const char *arg,
- unsigned int heartbeat_on);
-
-/*
- * Function: Adp_CloseDevice
- * Purpose: Close the device used for channels communication.
- *
- * Params: None
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open
- */
-AdpErrs Adp_CloseDevice(void);
-
-/*
- * Function: Adp_Ioctl
- * Purpose: Perform miscellaneous control operations on
- * the device used for channels communication.
- * This is a minimal veneer to DevSW_Ioctl.
- *
- * Params:
- * Input: opcode Reason code indicating the operation to perform.
- * In/Out: args Pointer to opcode-sensitive arguments/result space.
- *
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open, adp_failed
- */
-AdpErrs Adp_Ioctl(int opcode, void *args);
-
-/*
- * Function: Adp_ChannelRegisterRead
- * Purpose: Register a callback function for received packets on a given
- * channel
- *
- * Params:
- * Input: chan The channel the callback function is for.
- *
- * cbfunc The callback function. If NULL, then the current
- * callback is removed.
- *
- * cbstate State pointer to pass into the callback function
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open
- * adp_bad_channel_id
- *
- * Post-conditions: The callback function is responsible for freeing the
- * packet that is passed to it, when that packet is
- * no longer needed.
- */
-#ifdef __cplusplus
- extern "C" {
-#endif
-
-
-extern AdpErrs Adp_ChannelRegisterRead(const ChannelID chan,
- const ChannelCallback cbfunc,
- void *cbstate);
-
-#ifdef __cplusplus
- }
-#endif
-/*
- * Function: Adp_ChannelRead
- * Purpose: Wait until a packet has been read for a given channel, and
- * then return it. Callbacks for other channels are still
- * active while this read is blocking.
- *
- * Pre-conditions: No callback has been already been registered for
- * the channel.
- *
- * Params:
- * Input: chan The channel to read.
- *
- * Output: packet The received packet.
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open
- * adp_bad_channel_id
- * adp_callback_already_registered
- *
- * Post-conditions: The calling function is responsible for freeing the
- * received packet, when that packet is no longer
- * needed.
- */
-AdpErrs Adp_ChannelRead(const ChannelID chan, Packet **packet);
-
-/*
- * Function: Adp_ChannelWrite
- * Purpose: Write a packet to the given channel
- *
- * Pre-conditions: Channel must have been previously opened.
- *
- * Params:
- * Input: chan The channel to write.
- *
- * packet The packet to write.
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open
- * adp_bad_channel_id
- *
- * Post-conditions: The packet being written becomes the "property" of
- * Adp_ChannelWrite, which is responsible for freeing
- * the packet when it is no longer needed.
- */
-AdpErrs Adp_ChannelWrite(const ChannelID chan, Packet *packet);
-
-/*
- * Function: Adp_ChannelWriteAsync
- * Purpose: Write a packet to the given channel, but don't wait
- * for the write to complete before returning.
- *
- * Pre-conditions: Channel must have been previously opened.
- *
- * Params:
- * Input: chan The channel to write.
- *
- * packet The packet to write.
- *
- * Returns:
- * OK: adp_ok
- * Error: adp_device_not_open
- * adp_bad_channel_id
- *
- * Post-conditions: The packet being written becomes the "property" of
- * Adp_ChannelWrite, which is responsible for freeing
- * the packet when it is no longer needed.
- */
-AdpErrs Adp_ChannelWriteAsync(const ChannelID chan, Packet *packet);
-
-/*
- * Function: Adp_AsynchronousProcessing
- * Purpose: This routine should be called from persistent any idle loop
- * to give the data I/O routines a chance to poll for packet
- * activity. Depending upon the requested mode, this routine
- * may, or may not, block.
- *
- * Params:
- * Input: mode Specifies whether to block until a complete packet
- * has been read, all pending writes have completed,
- * or not to block at all.
- *
- * Returns: Nothing.
- */
-void Adp_AsynchronousProcessing(const AsyncMode mode);
-
-/*
- * prototype for DC_APPL packet handler
- */
-typedef void (*DC_Appl_Handler)(const DeviceDescr *device, Packet *packet);
-
-/*
- * install a handler for DC_APPL packets (can be NULL), returning old one.
- */
-DC_Appl_Handler Adp_Install_DC_Appl_Handler(const DC_Appl_Handler handler);
-
-/*
- * prototype for asynchronous processing callback
- */
-typedef void (*Adp_Async_Callback)(const DeviceDescr *device,
- const struct timeval *const time_now);
-
-/*
- * add an asynchronous processing callback to the list
- * TRUE == okay, FALSE == no more async processing slots
- */
-bool Adp_Install_Async_Callback( const Adp_Async_Callback callback_proc );
-
-/*
- * delay for a given period (in microseconds)
- */
-void Adp_delay(unsigned int period);
-
-#endif /* ndef angsd_hostchan_h */
-
-/* EOF hostchan.h */