mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	desktop-widgets: remove code under RM_OBSOLETE_CODE ifdef
history, and it is disturbing in "diff". Signed-off-by: Jan Iversen <jan@casacondor.com>
This commit is contained in:
		
							parent
							
								
									fa8acc0f40
								
							
						
					
					
						commit
						fba3e5115a
					
				
					 1 changed files with 0 additions and 117 deletions
				
			
		|  | @ -38,123 +38,6 @@ | |||
| #define PATH_MAX 4096 | ||||
| #endif | ||||
| 
 | ||||
| #ifdef RM_OBSOLETE_CODE | ||||
| struct dive_table gps_location_table; | ||||
| 
 | ||||
| // we don't overwrite any existing GPS info in the dive
 | ||||
| // so get the dive site and if there is none or there is one without GPS fix, add it
 | ||||
| static void copy_gps_location(struct dive *from, struct dive *to) | ||||
| { | ||||
| 	struct dive_site *ds = get_dive_site_for_dive(to); | ||||
| 	if (!ds || !dive_site_has_gps_location(ds)) { | ||||
| 		struct dive_site *gds = get_dive_site_for_dive(from); | ||||
| 		if (!ds) { | ||||
| 			// simply link to the one created for the fake dive
 | ||||
| 			unregister_dive_from_dive_site(to); | ||||
| 			add_dive_to_dive_site(to, gds); | ||||
| 		} else { | ||||
| 			ds->latitude = gds->latitude; | ||||
| 			ds->longitude = gds->longitude; | ||||
| 			if (same_string(ds->name, "")) | ||||
| 				ds->name = copy_string(gds->name); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| #define SAME_GROUP 6 * 3600 // six hours
 | ||||
| #define SET_LOCATION(_dive, _gpsfix, _mark) \ | ||||
| {                                           \ | ||||
| 	copy_gps_location(_gpsfix, _dive);  \ | ||||
| 	changed ++;                         \ | ||||
| 	tracer = _mark;                     \ | ||||
| } | ||||
| 
 | ||||
| //TODO: C Code. static functions are not good if we plan to have a test for them.
 | ||||
| static bool merge_locations_into_dives(void) | ||||
| { | ||||
| 	int i, j, tracer=0, changed=0; | ||||
| 	struct dive *gpsfix, *nextgpsfix, *dive; | ||||
| 
 | ||||
| 	sort_dive_table(&gps_location_table); | ||||
| 
 | ||||
| 	for_each_dive (i, dive) { | ||||
| 		if (!dive_has_gps_location(dive)) { | ||||
| 			for (j = tracer; (gpsfix = get_dive_from_table(j, &gps_location_table)) !=NULL; j++) { | ||||
| 				if (time_during_dive_with_offset(dive, gpsfix->when, SAME_GROUP)) { | ||||
| 					if (verbose) | ||||
| 						qDebug() << "processing gpsfix @" << get_dive_date_string(gpsfix->when) << | ||||
| 							    "which is withing six hours of dive from" << | ||||
| 							    get_dive_date_string(dive->when) << "until" << | ||||
| 							    get_dive_date_string(dive_endtime(dive)); | ||||
| 					/*
 | ||||
| 					 * If position is fixed during dive. This is the good one. | ||||
| 					 * Asign and mark position, and end gps_location loop | ||||
| 					 */ | ||||
| 					if (time_during_dive_with_offset(dive, gpsfix->when, 0)) { | ||||
| 						if (verbose) | ||||
| 							qDebug() << "gpsfix is during the dive, pick that one"; | ||||
| 						SET_LOCATION(dive, gpsfix, j); | ||||
| 						break; | ||||
| 					} else { | ||||
| 						/*
 | ||||
| 						 * If it is not, check if there are more position fixes in SAME_GROUP range | ||||
| 						 */ | ||||
| 						if ((nextgpsfix = get_dive_from_table(j + 1, &gps_location_table)) && | ||||
| 						    time_during_dive_with_offset(dive, nextgpsfix->when, SAME_GROUP)) { | ||||
| 							if (verbose) | ||||
| 								qDebug() << "look at the next gps fix @" << get_dive_date_string(nextgpsfix->when); | ||||
| 							/* we know the gps fixes are sorted; if they are both before the dive, ignore the first,
 | ||||
| 							 * if theay are both after the dive, take the first, | ||||
| 							 * if the first is before and the second is after, take the closer one */ | ||||
| 							if (nextgpsfix->when < dive->when) { | ||||
| 								if (verbose) | ||||
| 									qDebug() << "which is closer to the start of the dive, do continue with that"; | ||||
| 								continue; | ||||
| 							} else if (gpsfix->when > dive_endtime(dive)) { | ||||
| 								if (verbose) | ||||
| 									qDebug() << "which is even later after the end of the dive, so pick the previous one"; | ||||
| 								SET_LOCATION(dive, gpsfix, j); | ||||
| 								break; | ||||
| 							} else { | ||||
| 								/* ok, gpsfix is before, nextgpsfix is after */ | ||||
| 								if (dive->when - gpsfix->when <= nextgpsfix->when - dive_endtime(dive)) { | ||||
| 									if (verbose) | ||||
| 										qDebug() << "pick the one before as it's closer to the start"; | ||||
| 									SET_LOCATION(dive, gpsfix, j); | ||||
| 									break; | ||||
| 								} else { | ||||
| 									if (verbose) | ||||
| 										qDebug() << "pick the one after as it's closer to the start"; | ||||
| 									SET_LOCATION(dive, nextgpsfix, j + 1); | ||||
| 									break; | ||||
| 								} | ||||
| 							} | ||||
| 						/*
 | ||||
| 						 * If no more positions in range, the actual is the one. Asign, mark and end loop. | ||||
| 						 */ | ||||
| 						} else { | ||||
| 							if (verbose) | ||||
| 								qDebug() << "which seems to be the best one for this dive, so pick it"; | ||||
| 							SET_LOCATION(dive, gpsfix, j); | ||||
| 							break; | ||||
| 						} | ||||
| 					} | ||||
| 				} else { | ||||
| 					/* If position is out of SAME_GROUP range and in the future, mark position for
 | ||||
| 					 * next dive iteration and end the gps_location loop | ||||
| 					 */ | ||||
| 					if (gpsfix->when >= dive_endtime(dive) + SAME_GROUP) { | ||||
| 						tracer = j; | ||||
| 						break; | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| 	return changed > 0; | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| WebServices::WebServices(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f), reply(0) | ||||
| { | ||||
| 	ui.setupUi(this); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue