nightl
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
import difflib, click
|
||||
|
||||
from enum import Enum
|
||||
import difflib
|
||||
|
||||
|
||||
class TrackDisposition(Enum):
|
||||
|
||||
@@ -23,6 +25,7 @@ class TrackDisposition(Enum):
|
||||
DEPENDENT = {"name": "dependent", "index": 16}
|
||||
STILL_IMAGE = {"name": "still_image", "index": 17}
|
||||
|
||||
|
||||
def label(self):
|
||||
return str(self.value['name'])
|
||||
|
||||
@@ -31,22 +34,27 @@ class TrackDisposition(Enum):
|
||||
|
||||
|
||||
@staticmethod
|
||||
def toFlags(dispositionList):
|
||||
def toFlags(dispositionSet):
|
||||
"""Flags stored in integer bits (2**index)"""
|
||||
|
||||
if type(dispositionSet) is not set:
|
||||
raise click.ClickException('TrackDisposition.toFlags(): Argument is not of type set')
|
||||
|
||||
flags = 0
|
||||
for d in dispositionList:
|
||||
for d in dispositionSet:
|
||||
if type(d) is not TrackDisposition:
|
||||
raise click.ClickException('TrackDisposition.toFlags(): Element not of type TrackDisposition')
|
||||
flags += 2 ** d.index()
|
||||
return flags
|
||||
|
||||
@staticmethod
|
||||
def toList(flags):
|
||||
|
||||
dispositionList = []
|
||||
def toSet(flags):
|
||||
dispositionSet = set()
|
||||
for d in TrackDisposition:
|
||||
if flags & int(2 ** d.index()):
|
||||
dispositionList += [d]
|
||||
return dispositionList
|
||||
dispositionSet.add(d)
|
||||
return dispositionSet
|
||||
|
||||
|
||||
@staticmethod
|
||||
def find(label):
|
||||
|
||||
Reference in New Issue
Block a user