summaryrefslogtreecommitdiff
path: root/sys/src/cmd/nusb/cam/dat.h
blob: 6f6863d3721e31937f09d6a7ec8fb92b049bf59e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
typedef struct VFrame VFrame;
typedef struct Cam Cam;
typedef struct Format Format;

struct Format {
	VSUncompressedFormat *desc;
	int nframe;
	VSUncompressedFrame **frame;
};

struct VFrame {
	int n, sz, p;
	uchar *d;
	VFrame *next;
};

struct Cam {
	Dev *dev, *ep;
	Iface *iface;
	VSInputHeader *hdr;
	int nformat;
	Format **format;
	ProbeControl pc;
	Cam *next;
	File *ctlfile, *formatsfile, *videofile, *descfile, *framefile;
	
	int active, abort;
	VFrame *actl;
	VFrame *freel;
	Req *delreq;
	QLock qulock;
	int cvtid;
	int framemode;
};

extern int nunit;
extern VCUnit **unit;
extern Iface **unitif;