Esempio n. 1
0
def loadMissions(baseUrl,
                 fileList,
                 activityName,
                 campaignName,
                 pName,
                 pColor,
                 pTypeName,
                 aTypeName,
                 parmList,
                 dbName,
                 stride=1):
    '''Load missions from OPeNDAP url from either a list of files from a base or a single URL with a given activityName '''

    if fileList:
        for (aName, file) in zip([a + ' (stride=%d)' % stride for a in files],
                                 fileList):
            url = baseUrl + file
            print "loadMissions(): Calling runLoader() with parmList = %s" % parmList
            DAPloaders.runTrajectoryLoader(url, campaignName, aName, pName,
                                           pColor, pTypeName, aTypeName,
                                           parmList, dbName, stride)
    elif activityName:
        url = baseUrl
        DAPloaders.runTrajectoryLoader(url, campaignName, activityName, pName,
                                       pColor, pTypeName, aTypeName, parmList,
                                       dbName, stride)
    else:
        print "loadMissions(): Must specify either a fileList or an activityName"
Esempio n. 2
0
 def loadCastaway(self):
     '''
     Sparus specific load functions
     '''
     for (aName, file) in zip([ a + ' (stride=%d)' % self.stride for a in self.castaway_files], self.castaway_files):
         url = self.castaway_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, aName, 'castaway', self.colors['castaway'], 'mooring', 'CTD Profile', 
                                     self.castaway_parms, self.dbAlias, self.stride)
Esempio n. 3
0
 def loadSparus(self):
     '''
     Sparus specific load functions
     '''
     for (aName, file) in zip([ a + ' (stride=%d)' % self.stride for a in self.sparus_files], self.sparus_files):
         url = self.sparus_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, aName, 'sparus', self.colors['sparus'], 'auv', 'AUV mission', 
                                     self.sparus_parms, self.dbAlias, self.stride)
Esempio n. 4
0
 def loadFulmar(self, stride=None):
     '''
     Fulmar specific load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.fulmar_files], self.fulmar_files):
         url = self.fulmar_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, 'fulmar', self.colors['fulmar'], 'ship', 'cruise', 
                                     self.fulmar_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 5
0
 def loadESPbruce(self, stride=None):
     '''
     ESPbruce specific load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.espbruce_files], self.espbruce_files):
         url = self.espbruce_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, 'espbruce', self.colors['espbruce'], 'espbruce', 'ESP bruce Mission', 
                                     self.espbruce_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 6
0
 def loadJMuctd(self, stride=None):
     '''
     Martin specific underway load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.JMuctd_files], self.JMuctd_files):
         url = self.JMuctd_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, 'John_Martin_UCTD', self.colors['martin'], 'ship', 'cruise', 
                                     self.JMuctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 7
0
 def loadRCuctd(self, stride=None, platformName='RachelCarson_UCTD', activitytypeName='Rachel Carson Underway CTD Data'):
     '''
     RC uctd specific load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.rcuctd_files], self.rcuctd_files):
         url = self.rcuctd_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, platformName, self.colors['carson'], 'ship', activitytypeName, 
                                     self.rcuctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 8
0
 def loadESPmack(self, stride=None):
     '''
     ESPmack specific load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.espmack_files], self.espmack_files):
         url = self.espmack_base + file
         print "url = %s" % url
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, 'ESP_Mack_Drifter', self.colors['espmack'], 'espmack', 'ESP mack Mission', 
                                     self.espmack_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 9
0
 def loadStella(self, stride=None):
     '''
     Stella drift specific load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.stella_files], self.stella_files):
         url = self.stella_base + file
         dname='Stella' + aName[6:9]
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, dname, self.colors[dname], 'drifter', 'Stella drifter Mission', 
                                     self.stella_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 10
0
 def loadWFuctd(self, stride=None, platformName='WesternFlyer_UCTD', activitytypeName='Western Flyer Underway CTD Data'):
     '''
     WF uctd specific load functions.  Override defaults for @platformName and activitytypeName if it's desired
     to consider uctd and pctd coming from the same platform.  You may want to do this to use the data 
     visualization capabilities in STOQS.
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.wfuctd_files], self.wfuctd_files):
         url = self.wfuctd_base + file
         print "url = %s" % url
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, platformName, self.colors['flyer'], 'ship', activitytypeName,
                                     self.wfuctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
Esempio n. 11
0
 def loadCastaway(self):
     '''
     Sparus specific load functions
     '''
     for (aName, file) in zip(
         [a + ' (stride=%d)' % self.stride for a in self.castaway_files],
             self.castaway_files):
         url = self.castaway_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, aName,
                                        'castaway', self.colors['castaway'],
                                        'mooring', 'CTD Profile',
                                        self.castaway_parms, self.dbAlias,
                                        self.stride)
Esempio n. 12
0
def loadMissions(baseUrl, fileList, activityName, campaignName, pName, pColor, pTypeName, aTypeName, parmList, dbName, stride = 1):
    '''Load missions from OPeNDAP url from either a list of files from a base or a single URL with a given activityName '''
    c_desc = 'Mar Menor In Situ (AUV and Castaway) data loads'
    if fileList: 
        for (aName, f) in zip([ a + ' (stride=%d)' % stride for a in files], fileList):
            url = baseUrl + f
            print "loadMissions(): Calling runLoader() with parmList = %s" % parmList
            DAPloaders.runTrajectoryLoader(url, campaignName, c_desc, aName, pName, pColor, pTypeName, aTypeName, parmList, dbName, stride)
    elif activityName:
        url = baseUrl
        DAPloaders.runTrajectoryLoader(url, campaignName, c_desc, activityName, pName, pColor, pTypeName, aTypeName, parmList, dbName, stride)
    else:
        print "loadMissions(): Must specify either a fileList or an activityName"
Esempio n. 13
0
 def loadSparus(self):
     '''
     Sparus specific load functions
     '''
     for (aName, file) in zip(
         [a + ' (stride=%d)' % self.stride for a in self.sparus_files],
             self.sparus_files):
         url = self.sparus_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, aName,
                                        'sparus', self.colors['sparus'],
                                        'auv', 'AUV mission',
                                        self.sparus_parms, self.dbAlias,
                                        self.stride)
Esempio n. 14
0
 def loadJMpctd(self, stride=None, platformName='John_Martin_PCTD', activitytypeName='John Martin Profile CTD Data'):
     '''
     Martin specific underway load functions
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a + getStrideText(stride) for a in self.JMpctd_files], self.JMpctd_files):
         url = self.JMpctd_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, platformName, self.colors['martin'], 'ship', activitytypeName,
                                     self.JMpctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
     # load all the bottles           
     sl = SeabirdLoader(aName[:5], platformName, dbAlias=self.dbAlias, campaignName=self.campaignName, platformColor=self.colors['martin'], platformTypeName='ship', dodsBase=self.JMpctd_base)
     if self.args.verbose:
         sl.logger.setLevel(logging.DEBUG)
     sl.tdsBase= self.tdsBase
     sl.process_btl_files(self.JMpctd_files)
Esempio n. 15
0
    def loadRCpctd(self, stride=None, platformName='RachelCarson_PCTD', activitytypeName='Rachel Carson Profile CTD Data'):
        '''
        RC pctd specific load functions
        '''
        stride = stride or self.stride
        #platformName = 'rc_pctd'
        for (aName, file) in zip([ a.split('.')[0] + getStrideText(stride) for a in self.rcpctd_files], self.rcpctd_files):
            url = self.rcpctd_base + file
            DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, platformName, self.colors['carson'], 'ship', activitytypeName, 
                                        self.rcpctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
        # load all the bottles           

        sl = SeabirdLoader(aName[:5], platformName, dbAlias=self.dbAlias, campaignName=self.campaignName, platformColor=self.colors['carson'], platformTypeName='ship', dodsBase=self.rcpctd_base)
        if self.args.verbose:
            sl.logger.setLevel(logging.DEBUG)
        sl.tdsBase= self.tdsBase
        sl.process_btl_files(self.rcpctd_files)
Esempio n. 16
0
 def loadWFpctd(self, stride=None, platformName='WesternFlyer_PCTD', activitytypeName='Western Flyer Profile CTD Data'):
     '''
     WF pctd specific load functions. Override defaults for @platformName and activitytypeName if it's desired
     to consider uctd and pctd coming from the same platform.  You may want to do this to use the data 
     visualization capabilities in STOQS.
     '''
     stride = stride or self.stride
     for (aName, file) in zip([ a.split('.')[0] + getStrideText(stride) for a in self.wfpctd_files], self.wfpctd_files):
         url = self.wfpctd_base + file
         DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, platformName, self.colors['flyer'], 'ship', activitytypeName, 
                                     self.wfpctd_parms, self.dbAlias, stride, grdTerrain=self.grdTerrain)
     # Now load all the bottles           
     sl = SeabirdLoader('activity name', platformName, dbAlias=self.dbAlias, campaignName=self.campaignName, platformColor=self.colors['flyer'], dodsBase=self.wfpctd_base)
     if self.args.verbose:
         sl.logger.setLevel(logging.DEBUG)
     sl.tdsBase= self.tdsBase
     sl.process_btl_files(self.wfpctd_files)
Esempio n. 17
0
    def loadBEDS(self, stride=None, featureType='trajectory'):
        '''
        BEDS specific load functions; featureType can be 'trajectory' or 'timeSeries'.  Use 'trajectory' for events that we've fudged
        into a trajectory netCDF file using the canyon's thalweg.  Use 'timeSeries' for events for which the BED does not significantly translate.
        '''
        stride = stride or self.stride
        for (aName, pName, file, plotTimeSeriesDepth) in zip(
                            [ a + ' (stride=%d)' % stride for a in self.bed_files], 
                            self.bed_platforms, self.bed_files, self.bed_depths):
            url = self.bed_base + file
            if featureType == 'trajectory':
                # To get timeSeries plotting for trajectories (in the Parameter tab of the UI) assign a plotTimeSeriesDepth value of the starting depth in meters.
                DAPloaders.runTrajectoryLoader(url, self.campaignName, self.campaignDescription, aName, pName, self.colors[pName.lower()], 'bed', 'deployment', 
                                        self.bed_parms, self.dbAlias, stride, plotTimeSeriesDepth=plotTimeSeriesDepth, grdTerrain=self.grdTerrain)
            elif featureType == 'timeSeries':
                DAPloaders.runTimeSeriesLoader(url, self.campaignName, self.campaignDescription, aName, pName, self.colors[pName.lower()], 'bed', 'deployment', 
                                        self.bed_parms, self.dbAlias, stride)

            # Leave commented out to indicate how this would be used (X3DOM can't handle old style timestamp routing that we used to do in VRML)
            ##self.addPlaybackResources(x3dplaybackurl, aName)

            self.addPlatformResources('http://dods.mbari.org/data/beds/x3d/beds_housing_with_axes.x3d', pName)