util: is_array/mixed/etc is only meaningful for plain formats.
This commit is contained in:
parent
350bbc946a
commit
948ac63112
|
@ -138,6 +138,8 @@ class Format:
|
|||
return nr_channels
|
||||
|
||||
def is_array(self):
|
||||
if self.layout != PLAIN:
|
||||
return False
|
||||
ref_channel = self.channels[0]
|
||||
for channel in self.channels[1:]:
|
||||
if channel.size and (channel.size != ref_channel.size or channel.size % 8):
|
||||
|
@ -145,6 +147,8 @@ class Format:
|
|||
return True
|
||||
|
||||
def is_mixed(self):
|
||||
if self.layout != PLAIN:
|
||||
return False
|
||||
ref_channel = self.channels[0]
|
||||
if ref_channel.type == VOID:
|
||||
ref_channel = self.channels[1]
|
||||
|
@ -160,18 +164,24 @@ class Format:
|
|||
return is_pot(self.block_size())
|
||||
|
||||
def is_int(self):
|
||||
if self.layout != PLAIN:
|
||||
return False
|
||||
for channel in self.channels:
|
||||
if channel.type not in (VOID, UNSIGNED, SIGNED):
|
||||
return False
|
||||
return True
|
||||
|
||||
def is_float(self):
|
||||
if self.layout != PLAIN:
|
||||
return False
|
||||
for channel in self.channels:
|
||||
if channel.type not in (VOID, FLOAT):
|
||||
return False
|
||||
return True
|
||||
|
||||
def is_bitmask(self):
|
||||
if self.layout != PLAIN:
|
||||
return False
|
||||
if self.block_size() not in (8, 16, 32):
|
||||
return False
|
||||
for channel in self.channels:
|
||||
|
|
Loading…
Reference in New Issue