LSSTApplications  18.1.0
LSSTDataManagementBasePackage
indexerRegistry.py
Go to the documentation of this file.
1 #
2 # LSST Data Management System
3 #
4 # Copyright 2008-2017 AURA/LSST.
5 #
6 # This product includes software developed by the
7 # LSST Project (http://www.lsst.org/).
8 #
9 # This program is free software: you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation, either version 3 of the License, or
12 # (at your option) any later version.
13 #
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the LSST License Statement and
20 # the GNU General Public License along with this program. If not,
21 # see <https://www.lsstcorp.org/LegalNotices/>.
22 #
23 
24 __all__ = ["IndexerRegistry"]
25 
26 from lsst.pex.config import Config, makeRegistry, Field
27 from .htmIndexer import HtmIndexer
28 
29 IndexerRegistry = makeRegistry(
30  """Registry of indexing algorithms
31  """
32 )
33 
34 
36  depth = Field(
37  doc="Depth of the HTM tree to make. Default is depth=7 which gives ~ 0.3 sq. deg. per trixel.",
38  dtype=int,
39  default=7,
40  )
41 
42 
43 def makeHtmIndexer(config):
44  """Make an HtmIndexer
45  """
46  return HtmIndexer(depth=config.depth)
47 
48 
49 makeHtmIndexer.ConfigClass = HtmIndexerConfig
50 IndexerRegistry.register("HTM", makeHtmIndexer)
def makeRegistry(doc, configBaseType=Config)
Definition: registry.py:331