Module: Ioctl
- Defined in:
- lib/linux_input/ioctl.rb
Class Method Summary collapse
- .IO(type, nr) ⇒ Object
- .IOC(dir, type, nr, size) ⇒ Object
- .IOC_DIR(nr) ⇒ Object
- .IOC_NR(nr) ⇒ Object
- .IOC_SIZE(nr) ⇒ Object
- .IOC_TYPE(nr) ⇒ Object
- .IOR(type, nr, size) ⇒ Object
- .IOR_BAD(type, nr, size) ⇒ Object
- .IOW(type, nr, size) ⇒ Object
- .IOW_BAD(type, nr, size) ⇒ Object
- .IOWR(type, nr, size) ⇒ Object
- .IOWR_BAD(type, nr, size) ⇒ Object
Class Method Details
.IO(type, nr) ⇒ Object
9 |
# File 'lib/linux_input/ioctl.rb', line 9 def IO(type, nr) IOC(IOC_NONE, type, nr, 0) end |
.IOC(dir, type, nr, size) ⇒ Object
5 6 7 |
# File 'lib/linux_input/ioctl.rb', line 5 def IOC(dir, type, nr, size) (dir << IOC_DIRSHIFT) | (type << IOC_TYPESHIFT) | (nr << IOC_NRSHIFT) | (size << IOC_SIZESHIFT) end |
.IOC_DIR(nr) ⇒ Object
17 |
# File 'lib/linux_input/ioctl.rb', line 17 def IOC_DIR(nr) (nr >> IOC_DIRSHIFT) & IOC_DIRMASK end |
.IOC_NR(nr) ⇒ Object
19 |
# File 'lib/linux_input/ioctl.rb', line 19 def IOC_NR(nr) (nr >> IOC_NRSHIFT) & IOC_NRMASK end |
.IOC_SIZE(nr) ⇒ Object
20 |
# File 'lib/linux_input/ioctl.rb', line 20 def IOC_SIZE(nr) (nr >> IOC_SIZESHIFT) & IOC_SIZEMASK end |
.IOC_TYPE(nr) ⇒ Object
18 |
# File 'lib/linux_input/ioctl.rb', line 18 def IOC_TYPE(nr) (nr >> IOC_TYPESHIFT) & IOC_TYPEMASK end |
.IOR(type, nr, size) ⇒ Object
10 |
# File 'lib/linux_input/ioctl.rb', line 10 def IOR(type, nr, size) IOC(IOC_READ, type, nr, FFI.type_size(size)) end |
.IOR_BAD(type, nr, size) ⇒ Object
13 |
# File 'lib/linux_input/ioctl.rb', line 13 def IOR_BAD(type, nr, size) IOC(IOC_READ, type, nr, FFI.type_size(size)) end |
.IOW(type, nr, size) ⇒ Object
11 |
# File 'lib/linux_input/ioctl.rb', line 11 def IOW(type, nr, size) IOC(IOC_WRITE, type, nr, FFI.type_size(size)) end |
.IOW_BAD(type, nr, size) ⇒ Object
14 |
# File 'lib/linux_input/ioctl.rb', line 14 def IOW_BAD(type, nr, size) IOC(IOC_WRITE, type, nr, FFI.type_size(size)) end |