예제 #1
0
 def __init__(self,
              ring,
              which='specific',
              name="",
              time_tag=None,
              other_obj=None,
              guarantee=True,
              header_transform=None):
     SequenceBase.__init__(self, ring)
     self._ring = ring
     # A function for transforming the header before it's read
     self.header_transform = header_transform
     self.obj = _bf.BFrsequence()
     if which == 'specific':
         _check(_bf.bfRingSequenceOpen(self.obj, ring.obj, name, guarantee))
     elif which == 'at':
         assert (time_tag is not None)
         _check(
             _bf.bfRingSequenceOpenAt(self.obj, ring.obj, time_tag,
                                      guarantee))
     elif which == 'latest':
         _check(_bf.bfRingSequenceOpenLatest(self.obj, ring.obj, guarantee))
     elif which == 'earliest':
         _check(
             _bf.bfRingSequenceOpenEarliest(self.obj, ring.obj, guarantee))
     else:
         raise ValueError(
             "Invalid 'which' parameter; must be one of: 'specific', 'latest', 'earliest'"
         )
예제 #2
0
 def __init__(self,
              ring,
              which='specific',
              name="",
              time_tag=None,
              other_obj=None,
              guarantee=True):
     SequenceBase.__init__(self, ring)
     self._ring = ring
     self.obj = _bf.BFrsequence()
     if which == 'specific':
         _check(_bf.bfRingSequenceOpen(self.obj, ring.obj, name, guarantee))
     elif which == 'latest':
         _check(_bf.bfRingSequenceOpenLatest(self.obj, ring.obj, guarantee))
     elif which == 'earliest':
         _check(
             _bf.bfRingSequenceOpenEarliest(self.obj, ring.obj, guarantee))
     elif which == 'at':
         _check(
             _bf.bfRingSequenceOpenAt(self.obj, ring.obj, time_tag,
                                      guarantee))
     #elif which == 'next':
     #    self._check( self.lib.bfRingSequenceOpenNext(pointer(self.obj), other_obj) )
     else:
         raise ValueError(
             "Invalid 'which' parameter; must be one of: 'specific', 'latest', 'earliest'"
         )