#now create a string for SetActiveMask
SetActiveMaskString = ''
for signal in Sig_list:
    NumberOfTimeBasisSignals = len(config["SignalListForUseInTimeBasis"])
    CurrentSignalInTimeBasisList = False
    for i in range(NumberOfTimeBasisSignals):
        if signal == config["SignalListForUseInTimeBasis"][i]:
            CurrentSignalInTimeBasisList = True
    if CurrentSignalInTimeBasisList:
        SetActiveMaskString = SetActiveMaskString + '1'
    else:
        SetActiveMaskString = SetActiveMaskString + '0'

for dbFilePath in dbFilePaths:
    try:
        with icsFI.ICSDataFile(dbFilePath, slFilePath) as db:
            ActiveMaskResult = db.SetActiveMask(SetActiveMaskString)
            #db.SetActiveMask('1' * n_signals)   # capture all signals
            prevTimestamp = 0.0
            curTimestamp = db.JumpAfterTimestamp(0)
            dataPoints = db.GetPoints()
            while curTimestamp != sys.float_info.max:
                for sig_num in range(n_signals):
                    datum = dataPoints[sig_num]
                    # find which bin datum belongs to
                    bin_num = np.digitize([datum],
                                          bins_list[sig_num],
                                          right=True)[0]
                    delta_time = curTimestamp - prevTimestamp
                    time_tallys[sig_num][bin_num] += delta_time
                prevTimestamp = curTimestamp
예제 #2
0
    CurrentSignalInTimeBasisList = False
    for i in range(NumberOfTimeBasisSignals):
        if signal == config["SignalListForUseInTimeBasis"][i]:
            CurrentSignalInTimeBasisList = True
    if CurrentSignalInTimeBasisList:
        SetActiveMaskString = SetActiveMaskString + '1'
    else:
        SetActiveMaskString = SetActiveMaskString + '0'
    NumberOrSignals = NumberOrSignals + 1

#now go through each file, look for hits and log hits to dsr file
FileNumber = 0
for dbFilePath in dbFilePaths:
    try:
        FileNumber = FileNumber + 1
        with icsFI.ICSDataFile(dbFilePath, slFilePath) as data:
            ActiveMaskResult = data.SetActiveMask(SetActiveMaskString)
            curTimestamp = data.JumpBeforeTimestamp(0)
            dataPoints = data.GetPoints()
            dataPointsPrev = dataPoints.copy()
            #initialize Event State Parameters before analyzing each file
            Events.initializeEventParmsForNewDataFile()

            RecordIncludesExpressionEndEvent = False
            #loop through each record of each file
            while curTimestamp != sys.float_info.max:
                CurrentRecordHasBeenAdded = False
                for i in range(Events.NumberOfEvents):
                    if Events.EventActive[i] == False:
                        Events.SearchExpState[i] = eval(
                            Events.StartExpressionFormattedForEval[i])