timeline.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 
3 
6 
7 """ Contains a class that holds timeline informations
8 .. module:: node
9 """
10 
11 import converter.node as node
12 
13 
15  """ Stores informations about Timeline in the xar format
16  """
17 
18  def __init__(self, attrs):
19  super(Timeline, self).__init__("Timeline")
20 
21  # Attributes
22  self.fps = attrs.getValue("fps")
23  self.resources_acquisition = attrs.getValue("resources_acquisition")
24  self.size = attrs.getValue("size")
25  self.enable = attrs.getValue("enable")
26  self.start_frame = attrs.getValue("start_frame")
27  self.end_frame = attrs.getValue("end_frame")
28  self.scale = attrs.getValue("scale")
29 
30  # Elements
31  self.behavior_layers = []
32  self.actuator_list = None
33 
34  self._function_map = {'ActuatorList': Timeline.attach_actuator_list,
35  'BehaviorLayer': Timeline.attach_behavior_layer}
36 
37  def __eq__(self, other):
38  if not other:
39  return False
40  if not isinstance(other, Timeline):
41  return False
42 
43  rdict = self.__dict__
44  ldict = other.__dict__
45  for key in rdict.keys():
46  if (key == "parent_node" or key == "children_node"
47  or key == "_function_map" or key == "behavior_layers"):
48  continue
49  if rdict[key] != ldict[key]:
50  return False
51 
52  # for diagrams, we don't need to test layer and keyframe
53  if self.enable == "0":
54  rfld = self.behavior_layers[0].behavior_keyframes[0].diagram
55  lfld = other.behavior_layers[0].behavior_keyframes[0].diagram
56  if rfld != lfld:
57  return False
58  else:
59  if len(self.behavior_layers) != len(other.behavior_layers):
60  return False
61  for i in range(len(self.behavior_layers)):
62  if (len(self.behavior_layers[i].behavior_keyframes) !=
63  len(other.behavior_layers[i].behavior_keyframes)):
64  return False
65  for j in range(len(self.behavior_layers[i].behavior_keyframes)):
66  if (self.behavior_layers[i].behavior_keyframes[j] !=
67  other.behavior_layers[i].behavior_keyframes[j]):
68  return False
69  return True
70 
71  def __ne__(self, other):
72  return not self.__eq__(other)
73 
74  def attach_behavior_layer(self, behavior_layer):
75  behavior_layer.id = len(self.behavior_layers)
76  self.behavior_layers.append(behavior_layer)
77 
78  def attach_actuator_list(self, actuator_list):
79  self.actuator_list = actuator_list
converter.node
Definition: xarconverter/converter/node/__init__.py:1
converter.node.timeline.Timeline.scale
scale
Definition: timeline.py:28
converter.node.timeline.Timeline.actuator_list
actuator_list
Definition: timeline.py:32
converter.node.timeline.Timeline.attach_behavior_layer
def attach_behavior_layer(self, behavior_layer)
Definition: timeline.py:74
converter.node.timeline.Timeline.__init__
def __init__(self, attrs)
Definition: timeline.py:18
converter.node.timeline.Timeline.__ne__
def __ne__(self, other)
Definition: timeline.py:71
converter.node.timeline.Timeline.enable
enable
Definition: timeline.py:25
converter.node.Node.__eq__
def __eq__(self, other)
Definition: xarconverter/converter/node/__init__.py:75
converter.node.timeline.Timeline.size
size
Definition: timeline.py:24
converter.node.timeline.Timeline.start_frame
start_frame
Definition: timeline.py:26
converter.node.timeline.Timeline.behavior_layers
behavior_layers
Definition: timeline.py:31
converter.node.Node._function_map
_function_map
Definition: xarconverter/converter/node/__init__.py:25
converter.node.timeline.Timeline.__eq__
def __eq__(self, other)
Definition: timeline.py:37
converter.node.timeline.Timeline.fps
fps
Definition: timeline.py:22
converter.node.timeline.Timeline.resources_acquisition
resources_acquisition
Definition: timeline.py:23
converter.node.timeline.Timeline.attach_actuator_list
def attach_actuator_list(self, actuator_list)
Definition: timeline.py:78
converter.node.timeline.Timeline
Definition: timeline.py:14
converter.node.timeline.Timeline.end_frame
end_frame
Definition: timeline.py:27
converter.node.Node
Definition: xarconverter/converter/node/__init__.py:12


naoqi_libqicore
Author(s): Aldebaran
autogenerated on Wed Sep 14 2022 02:22:41