#ifndef DOS_NOTIFY_H
#define DOS_NOTIFY_H
/*
**
** $Filename: dos/notify.h $
** $Release: 2.04 Includes, V37.4 $
** $Revision: 36.8 $
** $Date: 90/08/29 $
**
** dos notification definitions
**
** (C) Copyright 1989-1991 Commodore-Amiga, Inc.
** All Rights Reserved
**
*/

#ifndef EXEC_TYPES_H
#include "exec/types.h"
#endif

#ifndef EXEC_PORTS_H
#include "exec/ports.h"
#endif

#ifndef EXEC_TASKS_H
#include "exec/tasks.h"
#endif




#define NOTIFY_CLASS 0x40000000


#define NOTIFY_CODE 0x1234




struct NotifyMessage {
 struct Message nm_ExecMessage;
 ULONG nm_Class;
 UWORD nm_Code;
 struct NotifyRequest *nm_NReq; 
 ULONG nm_DoNotTouch; 
 ULONG nm_DoNotTouch2; 
};




struct NotifyRequest {
 UBYTE *nr_Name;
 UBYTE *nr_FullName; 
 ULONG nr_UserData; 
 ULONG nr_Flags;

 union {

 struct {
 struct MsgPort *nr_Port; 
 } nr_Msg;

 struct {
 struct Task *nr_Task; 
 UBYTE nr_SignalNum; 
 UBYTE nr_pad[3];
 } nr_Signal;
 } nr_stuff;

 ULONG nr_Reserved[4]; 

 
 ULONG nr_MsgCount; 
 struct MsgPort *nr_Handler; 
};


#define NRF_SEND_MESSAGE 1
#define NRF_SEND_SIGNAL 2
#define NRF_WAIT_REPLY 8
#define NRF_NOTIFY_INITIAL 16


#define NRF_MAGIC 0x80000000


#define NRB_SEND_MESSAGE 0
#define NRB_SEND_SIGNAL 1
#define NRB_WAIT_REPLY 3
#define NRB_NOTIFY_INITIAL 4

#define NRB_MAGIC 31


#define NR_HANDLER_FLAGS 0xffff0000

#endif 
