Module: FileUtils::IOCTL

Defined in:
lib/pocolog/cp_cow.rb

Constant Summary

IOC_NRBITS =
8
IOC_TYPEBITS =
8
IOC_SIZEBITS =
14
IOC_DIRBITS =
2
IOC_NRSHIFT =
0
IOC_TYPESHIFT =
IOC_NRSHIFT + IOC_NRBITS
IOC_SIZESHIFT =
IOC_TYPESHIFT + IOC_TYPEBITS
IOC_DIRSHIFT =
IOC_SIZESHIFT + IOC_SIZEBITS
IOC_NONE =
0
IOC_WRITE =
1
IOC_READ =
2

Class Method Summary collapse

Class Method Details

.IOC(dir, type, nr, size) ⇒ Object



17
18
19
20
21
22
# File 'lib/pocolog/cp_cow.rb', line 17

def self.IOC(dir, type, nr, size)
    (dir << IOC_DIRSHIFT) +
        (type << IOC_TYPESHIFT) +
        (nr   << IOC_NRSHIFT) +
        (size << IOC_SIZESHIFT)
end

.IOR(type, nr, size) ⇒ Object



28
29
30
# File 'lib/pocolog/cp_cow.rb', line 28

def self.IOR(type, nr, size)
    IOC(IOC_READ, type, nr, size)
end

.IOW(type, nr, size) ⇒ Object



24
25
26
# File 'lib/pocolog/cp_cow.rb', line 24

def self.IOW(type, nr, size)
    IOC(IOC_WRITE, type, nr, size)
end