From 7c7214a731893ff115c7093e1471956bc3613457 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Fri, 30 Nov 2018 11:56:23 -0800 Subject: [PATCH] Parsing now returns objects, not dictionaries --- pycmx/parse_cmx.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pycmx/parse_cmx.py b/pycmx/parse_cmx.py index 7da7ecb..60719aa 100644 --- a/pycmx/parse_cmx.py +++ b/pycmx/parse_cmx.py @@ -80,7 +80,13 @@ def parse_cmx3600(file): parser.expect('Title') title = parser.current_token.title return event_list(title, parser) - + + +CmxEvent = namedtuple('CmxEvent',['title','number','clip_name', + 'source_name','channels','source_start','source_finish','record_start', + 'record_finish','fcm_drop']) + + def event_list(title, parser): state = {"fcm_drop" : False} @@ -92,7 +98,8 @@ def event_list(title, parser): state['fcm_drop'] = parser.current_token.drop elif parser.accept('Event'): if this_event != None: - events_result.append(this_event) + event_t = CmxEvent(**this_event) + events_result.append(event_t) raw_event = parser.current_token channels = CmxChannelMap() @@ -118,7 +125,8 @@ def event_list(title, parser): parser.next_token() if this_event != None: - events_result.append(this_event) + event_t = CmxEvent(**this_event) + events_result.append(event_t) return events_result