示例#1
0
文件: blob.py 项目: twifty/plasma
    def readBytes(self, numBytes: int) -> bytes:
        """Reads and returns numBytes of raw data.

        Parameters
        ----------
        numBytes : int
            The number of bytes to read.

        Returns
        -------
        bytes
            The unparsed data.

        Raises
        -------
        AssertationException
            If trying to read outside the range of available data.

        """

        end = self.offset + numBytes

        validate_range(numBytes,
                       1,
                       63,
                       msg='numBytes must be within the range 0-63, got $0.')
        validate_lower(end,
                       65,
                       msg='unable to read $0 bytes, only %d remain.' %
                       (64 - self.offset))

        str = self.data[self.offset:end]
        self.offset = end

        return str
示例#2
0
文件: profile.py 项目: twifty/plasma
 def getFrequency(self, slot: int) -> tuple:
     validate_range(slot, 0, 2)
     return (
         getattr(self, 'r_%d' % slot),
         getattr(self, 'g_%d' % slot),
         getattr(self, 'b_%d' % slot),
     )
示例#3
0
 def setActiveProfile(self, index: None) -> None:
     res = None
     if index is not None:
         validate_range(index, 0, 2)
         (r, g, b) = self.frequencies.getFrequency(index)
         res = (Resolution.from_hertz(r), Resolution.from_hertz(g),
                Resolution.from_hertz(b))
     self.resolution.setResolutions(res)
     self.active = index
示例#4
0
 def setProfileFrequencies(self, index: int, value: tuple) -> None:
     validate_range(index, 0, 2)
     validate_tuple(value, (int, int, int))
     r = Resolution.from_hertz(value[0])
     g = Resolution.from_hertz(value[1])
     b = Resolution.from_hertz(value[2])
     self.frequencies.setFrequency(
         index, (r.to_hertz(), g.to_hertz(), b.to_hertz()))
     if index == self.active:
         self.resolution.setResolutions((r, g, b))
示例#5
0
 def getProfileFrequencies(self, index: int) -> tuple:
     validate_range(index, 0, 2)
     return self.frequencies.getFrequency(index)
示例#6
0
 def value(self, profile: int) -> BYTE:
     validate_range(profile, 0, 1)
     return BYTE(Brightness.profiles[profile][self.level])
示例#7
0
 def value(self, profile: int) -> BYTE:
     validate_range(profile, 0, 4)
     return BYTE(Speed.profiles[profile][self.level])
示例#8
0
文件: profile.py 项目: twifty/plasma
 def setFrequency(self, slot: int, value: tuple) -> None:
     validate_range(slot, 0, 2)
     validate_tuple(value, (int, int, int))
     setattr(self, 'r_%d' % slot, WORD(value[0]))
     setattr(self, 'g_%d' % slot, WORD(value[1]))
     setattr(self, 'b_%d' % slot, WORD(value[2]))