5 * Created by Magnus Olsen
7 * THIS SOFTWARE IS NOT COPYRIGHTED
9 * This source code is offered for use in the public domain. You may
10 * use, modify or distribute it freely.
12 * This code is distributed in the hope that it will be useful but
13 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
14 * DISCLAIMED. This includes but is not limited to warranties of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
22 #if (_MSC_VER >= 1020)
30 typedef struct _IEEE1394_VDEV_PNP_REQUEST
34 ULARGE_INTEGER InstanceId
;
36 } IEEE1394_VDEV_PNP_REQUEST
,*PIEEE1394_VDEV_PNP_REQUEST
;
39 typedef struct _IEEE1394_API_REQUEST
45 IEEE1394_VDEV_PNP_REQUEST AddVirtualDevice
;
46 IEEE1394_VDEV_PNP_REQUEST RemoveVirtualDevice
;
48 } IEEE1394_API_REQUEST
, *PIEEE1394_API_REQUEST
;
50 #define IEEE1394_API_ADD_VIRTUAL_DEVICE 0x00000001
51 #define IEEE1394_API_REMOVE_VIRTUAL_DEVICE 0x00000002
52 #define IEEE1394_REQUEST_FLAG_UNICODE 0x00000001
53 #define IEEE1394_REQUEST_FLAG_PERSISTENT 0x00000002
54 #define IEEE1394_REQUEST_FLAG_USE_LOCAL_HOST_EUI 0x00000004
55 #define BUS1394_VIRTUAL_DEVICE_LIST_KEY L"Virtual Device List"
56 #define BUS1394_LOCAL_HOST_INSTANCE_KEY L"LOCAL HOST EUI64"
57 #define IOCTL_IEEE1394_API_REQUEST CTL_CODE(FILE_DEVICE_UNKNOWN, 0x100, METHOD_BUFFERED, FILE_ANY_ACCESS)