Пример #1
0
 def isis_serial(self):
     """
     Generate an ISIS compatible serial number using the data file
     associated with this node.  This assumes that the data file
     has a PVL header.
     """
     if not hasattr(self, '_isis_serial'):
         try:
             self._isis_serial = generate_serial_number(self['image_path'])
         except:
             self._isis_serial = None
     return self._isis_serial
Пример #2
0
 def isis_serial(self):
     """
     Generate an ISIS compatible serial number using the data file
     associated with this node.  This assumes that the data file
     has a PVL header.
     """
     if not hasattr(self, '_isis_serial'):
         try:
             self._isis_serial = generate_serial_number(self.image_path)
         except:
             self._isis_serial = None
     return self._isis_serial
Пример #3
0
    def serials(self):
        """
        Create a dictionary of ISIS3 compliant serial numbers for each
        node in the graph.

        Returns
        -------
        serials : dict
                  with key equal to the node id and value equal to
                  an ISIS3 compliant serial number or None
        """
        serials = {}
        for n, node in self.nodes.data('data'):
            serials[n] = generate_serial_number(node['image_path'])
        return serials
Пример #4
0
def generate_sensors(cubes, directory=None, clean=False):
    """
    Generate a set of USGSCSM sensor models from a list of ISIS cube files

    Parameters
    ----------
    cubes     : str
              Directory/filename of a file containing ISIS cube file paths
    directory : str
              Output directory to save resulting json files. Defaults to the
              same directory as cube list file
    clean     : flag
              Option to delete json file outputs

    Returns
    -------
    sensors   : dictionary
              Dictionary mapping ISIS serial numbers to USGSCSM sensor models
    """
    if directory is None:
        directory = os.path.dirname(cubes)

    isd_files = []
    sensors = {}
    for line in open(cubes):
        basename = os.path.splitext(os.path.basename(line.strip()))[0]
        isd = os.path.join(directory, basename+'.json')
        isd_files.append(isd)
        with open(isd, 'w+') as f:
            f.write(loads(line.strip(), formatter='usgscsm'))

        sn = generate_serial_number(line.strip())
        sensors[sn] = create_csm(isd)

    if clean:
        for isd in isd_files:
            os.remove(isd)

    return sensors
 def test_generate_serial_number(self):
     label = get_path('Test_PVL.lbl')
     serial = isis_serial_number.generate_serial_number(label)
     self.assertEqual('APOLLO15/METRIC/1971-07-31T14:02:27.179', serial)
def test_generate_serial_number(label, expected):
    serial = isis_serial_number.generate_serial_number(label)
    assert serial == expected

    
Пример #7
0
def test_generate_serial_number(label, expected):
    serial = isis_serial_number.generate_serial_number(label)
    assert serial == expected
Пример #8
0
 def test_generate_serial_number(self):
     label = get_path('Test_PVL.lbl')
     serial = isis_serial_number.generate_serial_number(label)
     self.assertEqual('APOLLO15/METRIC/1971-07-31T14:02:27.179', serial)