/
flogger_signals.py
47 lines (43 loc) · 1.31 KB
/
flogger_signals.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import signal
import time
import sqlite3
from flogger_process_log import process_log
from flogger_dump_flights import dump_flights
from flogger_dump_tracks import dump_tracks2
from flogger_functions import delete_table
#
#-----------------------------------------------------------------
# Graceful handling of cntrl-c signals
#-----------------------------------------------------------------
#
def sig_handler(db, cursor):
def inner_sig_handler(signum, frame):
print 'Cntrl-C pressed'
#
# Dump flights table as cvs file
#
print "Dump flights table"
dump_flights()
#
# Dump tracks from flights table as .gpx
#
print "Dump tracks"
dump_tracks2(cursor, db)
#
# Delete entries from daily flight logging tables
#
delete_table("flight_log")
delete_table("flight_log2")
delete_table("flight_log_final")
delete_table("flight_group")
delete_table("flights")
delete_table("track")
delete_table("trackFinal")
delete_table("flarm_db")
db.commit()
print "Cntrl-C, exit"
exit()
signal.signal(signal.SIGINT, inner_sig_handler)
return
#signal.signal(signal.SIGINT, sig_handler)
#time.sleep(10) # Press Ctrl+c here