LSSTApplications  12.1-5-gbdcc3ab,15.0+10,15.0+19,15.0-1-g19261fa+10,15.0-1-g60afb23+19,15.0-1-g615e0bb+11,15.0-1-g6668b0b+6,15.0-1-g788a293+19,15.0-1-ga91101e+19,15.0-1-gae1598d+9,15.0-1-gd076f1f+17,15.0-1-gdf18595+3,15.0-1-gf4f1c34+9,15.0-10-g113cadf7+2,15.0-11-g5674e3b,15.0-2-g100d730+12,15.0-2-g20c4630+8,15.0-2-g35685a8+15,15.0-2-g5dfaa72+8,15.0-2-gf38729e+14,15.0-24-g02ed2a30c+2,15.0-3-g11fe1a0+3,15.0-3-g130a88a+2,15.0-3-g707930d+1,15.0-3-g9103c06+9,15.0-3-ga03b4ca+26,15.0-3-gaec6799+6,15.0-4-g32c2b40+2,15.0-4-g535e784+3,15.0-4-g654b129+17,15.0-5-g23e394c+7,15.0-5-g54bfcd9+2,15.0-5-gb31927c,15.0-6-g4418537+2,15.0-7-g0c26201,15.0-7-g6bb3a066+2,15.0-9-g5661f8f+4,w.2018.18
LSSTDataManagementBasePackage
Public Member Functions | Public Attributes | List of all members
lsst.geom.geometry._SubList Class Reference
Inheritance diagram for lsst.geom.geometry._SubList:

Public Member Functions

def __init__ (self, backingList)
 
def append (self, i)
 
def filter (self, predicate)
 
def __len__ (self)
 
def __iter__ (self)
 

Public Attributes

 backingList
 
 active
 
 head
 
 tail
 
 freeTail
 
 len
 

Detailed Description

Class that maintains a sub-list of a backing list in
insertion order. Elements can be deleted in O(1) time.

Definition at line 1970 of file geometry.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.geom.geometry._SubList.__init__ (   self,
  backingList 
)

Definition at line 1975 of file geometry.py.

1975  def __init__(self, backingList):
1976  self.backingList = backingList
1977  self.active = []
1978  self.head = -1
1979  self.tail = -1
1980  self.freeTail = -1
1981  self.len = 0
1982 
def __init__(self, minimum, dataRange, Q)
Definition: rgb.py:414

Member Function Documentation

◆ __iter__()

def lsst.geom.geometry._SubList.__iter__ (   self)
Returns an iterator over all elements in the sub-list.

Definition at line 2028 of file geometry.py.

2028  def __iter__(self):
2029  """Returns an iterator over all elements in the sub-list.
2030  """
2031  h = self.head
2032  while h != -1:
2033  t = self.active[h]
2034  yield self.backingList[t[0]]
2035  h = t[2]
2036 
2037 
2038 # -- Spherical box partitioning scheme ----
2039 

◆ __len__()

def lsst.geom.geometry._SubList.__len__ (   self)

Definition at line 2025 of file geometry.py.

2025  def __len__(self):
2026  return self.len
2027 

◆ append()

def lsst.geom.geometry._SubList.append (   self,
  i 
)

Definition at line 1983 of file geometry.py.

1983  def append(self, i):
1984  if self.freeTail == -1:
1985  j = len(self.active)
1986  self.active.append([i, self.tail, -1])
1987  else:
1988  j = self.freeTail
1989  self.freeTail = self.active[self.freeTail][2]
1990  self.active[j] = [i, self.tail, -1]
1991  if self.tail != -1:
1992  self.active[self.tail][2] = j
1993  if self.head == -1:
1994  self.head = j
1995  self.tail = j
1996  self.len += 1
1997 
std::shared_ptr< FrameSet > append(FrameSet const &first, FrameSet const &second)
Construct a FrameSet that performs two transformations in series.
Definition: functional.cc:33

◆ filter()

def lsst.geom.geometry._SubList.filter (   self,
  predicate 
)
Removes all elements E in the sub-list for which predicate(E)
evaluates to True.

Definition at line 1998 of file geometry.py.

1998  def filter(self, predicate):
1999  """Removes all elements E in the sub-list for which predicate(E)
2000  evaluates to True.
2001  """
2002  h = self.head
2003  while h != -1:
2004  t = self.active[h]
2005  if predicate(self.backingList[t[0]]):
2006  # Remove element h
2007  self.backingList[t[0]] = None
2008  self.len -= 1
2009  prev = t[1]
2010  next = t[2]
2011  if next != -1:
2012  self.active[next][1] = prev
2013  else:
2014  self.tail = prev
2015  if prev != -1:
2016  self.active[prev][2] = next
2017  else:
2018  self.head = next
2019  t[2] = self.freeTail
2020  self.freeTail = h
2021  h = next
2022  else:
2023  h = t[2]
2024 

Member Data Documentation

◆ active

lsst.geom.geometry._SubList.active

Definition at line 1977 of file geometry.py.

◆ backingList

lsst.geom.geometry._SubList.backingList

Definition at line 1976 of file geometry.py.

◆ freeTail

lsst.geom.geometry._SubList.freeTail

Definition at line 1980 of file geometry.py.

◆ head

lsst.geom.geometry._SubList.head

Definition at line 1978 of file geometry.py.

◆ len

lsst.geom.geometry._SubList.len

Definition at line 1981 of file geometry.py.

◆ tail

lsst.geom.geometry._SubList.tail

Definition at line 1979 of file geometry.py.


The documentation for this class was generated from the following file: