1 #ifndef HIDD_PARALLEL_H
2 #define HIDD_PARALLEL_H
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
8 Desc: Definitions for the Parallel HIDD system.
13 # include <exec/types.h>
16 # include <hidd/hidd.h>
22 #include <utility/utility.h>
25 #define CLID_Hidd_Parallel "hidd.parallel.parallel"
26 #define CLID_Hidd_ParallelUnit "hidd.parallel.parallelunit"
28 #define IID_Hidd_Parallel "hidd.parallel.parallel"
29 #define IID_Hidd_ParallelUnit "hidd.parallel.parallelunit"
33 /**** Graphics definitions ****************************************************/
35 #ifndef __OOP_NOATTRBASES__
36 extern OOP_AttrBase HiddParallelUnitAB
;
40 aoHidd_ParallelUnit_Unit
,
42 num_Hidd_ParallelUnit_Attrs
46 #define aHidd_ParallelUnit_Unit (HiddParallelUnitAB + aoHidd_ParallelUnit_Unit)
48 #define IS_HIDDPARALLELUNIT_ATTR(attr, idx) IS_IF_ATTR(attr, idx, HiddParallelUnitAB, num_Hidd_ParallelUnit_Attrs)
52 moHidd_Parallel_NewUnit
= 0,
53 moHidd_Parallel_DisposeUnit
,
54 moHidd_Parallel_NumMethods
// always keep this the last one!
60 struct pHidd_Parallel_NewUnit
66 struct pHidd_Parallel_DisposeUnit
73 /**** Parallel Unit definitions ******************************************************/
78 /* Methods for a parallel unit */
80 moHidd_ParallelUnit_Init
,
81 moHidd_ParallelUnit_Write
,
82 moHidd_ParallelUnit_Start
,
83 moHidd_ParallelUnit_Stop
,
84 moHidd_ParallelUnit_GetStatus
,
85 moHidd_ParallelUnit_NumMethods
// always keep this the last one!
89 /* messages for a parallel unit */
91 struct pHidd_ParallelUnit_Init
95 VOID
*DataReceivedUserData
;
97 VOID
*WriteDataUserData
;
100 struct pHidd_ParallelUnit_Write
107 struct pHidd_ParallelUnit_Start
112 struct pHidd_ParallelUnit_Stop
117 struct pHidd_ParallelUnit_GetStatus
122 /* Predeclarations of stubs in libhiddparallelstubs.h */
124 OOP_Object
* HIDD_Parallel_NewUnit (OOP_Object
*obj
, ULONG unitnum
);
125 VOID
HIDD_Parallel_DisposeUnit (OOP_Object
*obj
, OOP_Object
*unit
);
127 BOOL
HIDD_ParallelUnit_Init (OOP_Object
*obj
, VOID
* DataReceived
, VOID
* DataReceivedUserData
, VOID
* WriteData
, VOID
* WriteDataUserData
);
128 ULONG
HIDD_ParallelUnit_Write (OOP_Object
*obj
, UBYTE
* data
, ULONG length
);
129 VOID
HIDD_ParallelUnit_Start (OOP_Object
*obj
);
130 VOID
HIDD_ParallelUnit_Stop (OOP_Object
*obj
);
131 UWORD
HIDD_ParallelUnit_GetStatus (OOP_Object
*obj
);
133 #endif /* HIDD_PARALLEL_H */