]> gitweb.fperrin.net Git - GpsPrune.git/blob - src/tim/prune/FunctionLibrary.java
Version 20.4, May 2021
[GpsPrune.git] / src / tim / prune / FunctionLibrary.java
1 package tim.prune;
2
3 import tim.prune.correlate.AudioCorrelator;
4 import tim.prune.correlate.PhotoCorrelator;
5 import tim.prune.function.AboutScreen;
6 import tim.prune.function.AddAltitudeOffset;
7 import tim.prune.function.AddTimeOffset;
8 import tim.prune.function.CheckVersionScreen;
9 import tim.prune.function.ConnectToPointFunction;
10 import tim.prune.function.ConvertNamesToTimes;
11 import tim.prune.function.CreateMarkerWaypointsFunction;
12 import tim.prune.function.CropToSelection;
13 import tim.prune.function.DeleteFieldValues;
14 import tim.prune.function.DeleteSelectedRangeFunction;
15 import tim.prune.function.DisconnectAudioFunction;
16 import tim.prune.function.DisconnectPhotoFunction;
17 import tim.prune.function.DiskCacheConfig;
18 import tim.prune.function.DownloadOsmFunction;
19 import tim.prune.function.DuplicatePoint;
20 import tim.prune.function.FindWaypoint;
21 import tim.prune.function.ProjectPoint;
22 import tim.prune.function.ShowFullDetails;
23 import tim.prune.function.GetWikipediaFunction;
24 import tim.prune.function.HelpScreen;
25 import tim.prune.function.IgnoreExifThumb;
26 import tim.prune.function.InterpolateFunction;
27 import tim.prune.function.PhotoPopupFunction;
28 import tim.prune.function.PlayAudioFunction;
29 import tim.prune.function.RearrangePhotosFunction;
30 import tim.prune.function.RearrangeWaypointsFunction;
31 import tim.prune.function.RemoveAudioFunction;
32 import tim.prune.function.RemovePhotoFunction;
33 import tim.prune.function.RotatePhoto;
34 import tim.prune.function.SearchOsmPoisFunction;
35 import tim.prune.function.SearchWikipediaNames;
36 import tim.prune.function.SelectSegmentFunction;
37 import tim.prune.function.SelectTimezoneFunction;
38 import tim.prune.function.ShowKeysScreen;
39 import tim.prune.function.ShowThreeDFunction;
40 import tim.prune.function.SingleNumericParameterFunction;
41 import tim.prune.function.StopAudioFunction;
42 import tim.prune.function.autoplay.AutoplayFunction;
43 import tim.prune.function.charts.Charter;
44 import tim.prune.function.compress.CompressTrackFunction;
45 import tim.prune.function.compress.DeleteMarkedPointsFunction;
46 import tim.prune.function.compress.MarkLiftsFunction;
47 import tim.prune.function.compress.MarkPointsInRectangleFunction;
48 import tim.prune.function.deletebydate.DeleteByDateFunction;
49 import tim.prune.function.distance.DistanceFunction;
50 import tim.prune.function.edit.PointNameEditor;
51 import tim.prune.function.estimate.EstimateTime;
52 import tim.prune.function.estimate.LearnParameters;
53 import tim.prune.function.settings.SaveConfig;
54 import tim.prune.function.settings.SetAltitudeTolerance;
55 import tim.prune.function.settings.SetColours;
56 import tim.prune.function.settings.SetDisplaySettings;
57 import tim.prune.function.settings.SetLanguage;
58 import tim.prune.function.settings.SetMapBgFunction;
59 import tim.prune.function.settings.SetPathsFunction;
60 import tim.prune.function.sew.SewTrackSegmentsFunction;
61 import tim.prune.function.sew.SplitSegmentsFunction;
62 import tim.prune.function.srtm.DownloadSrtmFunction;
63 import tim.prune.function.srtm.LookupSrtmFunction;
64 import tim.prune.function.weather.GetWeatherForecastFunction;
65 import tim.prune.load.AudioLoader;
66 import tim.prune.load.BabelLoadFromFile;
67 import tim.prune.load.BabelLoadFromGps;
68 import tim.prune.save.GpsSaver;
69 import tim.prune.save.GpxExporter;
70 import tim.prune.save.ImageExporter;
71 import tim.prune.save.KmlExporter;
72 import tim.prune.save.PovExporter;
73
74
75 /**
76  * Class to provide access to functions
77  */
78 public abstract class FunctionLibrary
79 {
80         public static GenericFunction FUNCTION_GPXEXPORT = null;
81         public static GenericFunction FUNCTION_KMLEXPORT = null;
82         public static PovExporter FUNCTION_POVEXPORT     = null;
83         public static GenericFunction FUNCTION_IMAGEEXPORT = null;
84         public static GenericFunction FUNCTION_GPSLOAD  = null;
85         public static GenericFunction FUNCTION_GPSSAVE  = null;
86         public static GenericFunction FUNCTION_IMPORTBABEL = null;
87         public static GenericFunction FUNCTION_SAVECONFIG  = null;
88         public static GenericFunction FUNCTION_EDIT_WAYPOINT_NAME = null;
89         public static GenericFunction FUNCTION_PROJECT_POINT = null;
90         public static GenericFunction FUNCTION_REARRANGE_WAYPOINTS = null;
91         public static GenericFunction FUNCTION_SELECT_SEGMENT = null;
92         public static GenericFunction FUNCTION_SPLIT_SEGMENTS = null;
93         public static GenericFunction FUNCTION_SEW_SEGMENTS = null;
94         public static GenericFunction FUNCTION_CREATE_MARKER_WAYPOINTS = null;
95         public static GenericFunction FUNCTION_REARRANGE_PHOTOS = null;
96         public static GenericFunction FUNCTION_COMPRESS = null;
97         public static GenericFunction FUNCTION_MARK_LIFTS = null;
98         public static DeleteMarkedPointsFunction FUNCTION_DELETE_MARKED_POINTS = null;
99         public static GenericFunction FUNCTION_DELETE_RANGE = null;
100         public static GenericFunction FUNCTION_CROP_TRACK = null;
101         public static GenericFunction FUNCTION_MARK_IN_RECTANGLE = null;
102         public static GenericFunction FUNCTION_DELETE_BY_DATE = null;
103         public static SingleNumericParameterFunction FUNCTION_INTERPOLATE = null;
104         public static GenericFunction FUNCTION_LOOKUP_SRTM = null;
105         public static GenericFunction FUNCTION_DOWNLOAD_SRTM = null;
106         public static GenericFunction FUNCTION_NEARBY_WIKIPEDIA = null;
107         public static GenericFunction FUNCTION_SEARCH_WIKIPEDIA = null;
108         public static GenericFunction FUNCTION_SEARCH_OSMPOIS = null;
109         public static GenericFunction FUNCTION_DOWNLOAD_OSM = null;
110         public static GenericFunction FUNCTION_ADD_TIME_OFFSET  = null;
111         public static GenericFunction FUNCTION_ADD_ALTITUDE_OFFSET  = null;
112         public static GenericFunction FUNCTION_CONVERT_NAMES_TO_TIMES  = null;
113         public static GenericFunction FUNCTION_DELETE_FIELD_VALUES  = null;
114         public static GenericFunction FUNCTION_FIND_WAYPOINT = null;
115         public static GenericFunction FUNCTION_DUPLICATE_POINT = null;
116         public static GenericFunction FUNCTION_CONNECT_TO_POINT = null;
117         public static GenericFunction FUNCTION_DISCONNECT_PHOTO = null;
118         public static GenericFunction FUNCTION_REMOVE_PHOTO = null;
119         public static GenericFunction FUNCTION_DISCONNECT_AUDIO = null;
120         public static GenericFunction FUNCTION_CORRELATE_PHOTOS = null;
121         public static GenericFunction FUNCTION_ROTATE_PHOTO_LEFT = null;
122         public static GenericFunction FUNCTION_ROTATE_PHOTO_RIGHT = null;
123         public static GenericFunction FUNCTION_PHOTO_POPUP = null;
124         public static GenericFunction FUNCTION_IGNORE_EXIF_THUMB = null;
125         public static GenericFunction FUNCTION_CHARTS = null;
126         public static GenericFunction FUNCTION_3D     = null;
127         public static GenericFunction FUNCTION_DISTANCES  = null;
128         public static GenericFunction FUNCTION_FULL_DETAILS = null;
129         public static GenericFunction FUNCTION_AUTOPLAY_TRACK = null;
130         public static GenericFunction FUNCTION_ESTIMATE_TIME = null;
131         public static GenericFunction FUNCTION_LEARN_ESTIMATION_PARAMS = null;
132         public static GenericFunction FUNCTION_GET_WEATHER_FORECAST = null;
133         public static GenericFunction FUNCTION_LOAD_AUDIO = null;
134         public static GenericFunction FUNCTION_REMOVE_AUDIO = null;
135         public static GenericFunction FUNCTION_CORRELATE_AUDIOS = null;
136         public static GenericFunction FUNCTION_PLAY_AUDIO = null;
137         public static GenericFunction FUNCTION_STOP_AUDIO = null;
138         public static GenericFunction FUNCTION_SET_DISPLAY_SETTINGS = null;
139         public static GenericFunction FUNCTION_SET_MAP_BG = null;
140         public static GenericFunction FUNCTION_SET_DISK_CACHE = null;
141         public static GenericFunction FUNCTION_SET_PATHS  = null;
142         public static GenericFunction FUNCTION_SET_COLOURS = null;
143         public static GenericFunction FUNCTION_SET_LANGUAGE = null;
144         public static SingleNumericParameterFunction FUNCTION_SET_ALTITUDE_TOLERANCE = null;
145         public static GenericFunction FUNCTION_SET_TIMEZONE = null;
146         public static GenericFunction FUNCTION_HELP   = null;
147         public static GenericFunction FUNCTION_SHOW_KEYS = null;
148         public static GenericFunction FUNCTION_ABOUT  = null;
149         public static GenericFunction FUNCTION_CHECK_VERSION  = null;
150
151
152         /**
153          * Initialise library of functions
154          * @param inApp App object to give to functions
155          */
156         public static void initialise(App inApp)
157         {
158                 FUNCTION_GPXEXPORT = new GpxExporter(inApp);
159                 FUNCTION_KMLEXPORT = new KmlExporter(inApp);
160                 FUNCTION_POVEXPORT = new PovExporter(inApp);
161                 FUNCTION_IMAGEEXPORT = new ImageExporter(inApp);
162                 FUNCTION_GPSLOAD   = new BabelLoadFromGps(inApp);
163                 FUNCTION_GPSSAVE   = new GpsSaver(inApp);
164                 FUNCTION_IMPORTBABEL = new BabelLoadFromFile(inApp);
165                 FUNCTION_SAVECONFIG = new SaveConfig(inApp);
166                 FUNCTION_EDIT_WAYPOINT_NAME = new PointNameEditor(inApp);
167                 FUNCTION_PROJECT_POINT = new ProjectPoint(inApp);
168                 FUNCTION_REARRANGE_WAYPOINTS = new RearrangeWaypointsFunction(inApp);
169                 FUNCTION_SELECT_SEGMENT = new SelectSegmentFunction(inApp);
170                 FUNCTION_SPLIT_SEGMENTS = new SplitSegmentsFunction(inApp);
171                 FUNCTION_SEW_SEGMENTS = new SewTrackSegmentsFunction(inApp);
172                 FUNCTION_CREATE_MARKER_WAYPOINTS = new CreateMarkerWaypointsFunction(inApp);
173                 FUNCTION_REARRANGE_PHOTOS = new RearrangePhotosFunction(inApp);
174                 FUNCTION_COMPRESS = new CompressTrackFunction(inApp);
175                 FUNCTION_MARK_LIFTS = new MarkLiftsFunction(inApp);
176                 FUNCTION_DELETE_MARKED_POINTS = new DeleteMarkedPointsFunction(inApp);
177                 FUNCTION_DELETE_RANGE = new DeleteSelectedRangeFunction(inApp);
178                 FUNCTION_CROP_TRACK = new CropToSelection(inApp);
179                 FUNCTION_MARK_IN_RECTANGLE = new MarkPointsInRectangleFunction(inApp);
180                 FUNCTION_DELETE_BY_DATE = new DeleteByDateFunction(inApp);
181                 FUNCTION_INTERPOLATE = new InterpolateFunction(inApp);
182                 FUNCTION_LOOKUP_SRTM = new LookupSrtmFunction(inApp);
183                 FUNCTION_DOWNLOAD_SRTM = new DownloadSrtmFunction(inApp);
184                 FUNCTION_NEARBY_WIKIPEDIA = new GetWikipediaFunction(inApp);
185                 FUNCTION_SEARCH_WIKIPEDIA = new SearchWikipediaNames(inApp);
186                 FUNCTION_SEARCH_OSMPOIS = new SearchOsmPoisFunction(inApp);
187                 FUNCTION_DOWNLOAD_OSM = new DownloadOsmFunction(inApp);
188                 FUNCTION_ADD_TIME_OFFSET = new AddTimeOffset(inApp);
189                 FUNCTION_ADD_ALTITUDE_OFFSET = new AddAltitudeOffset(inApp);
190                 FUNCTION_CONVERT_NAMES_TO_TIMES = new ConvertNamesToTimes(inApp);
191                 FUNCTION_DELETE_FIELD_VALUES = new DeleteFieldValues(inApp);
192                 FUNCTION_FIND_WAYPOINT = new FindWaypoint(inApp);
193                 FUNCTION_DUPLICATE_POINT = new DuplicatePoint(inApp);
194                 FUNCTION_CONNECT_TO_POINT = new ConnectToPointFunction(inApp);
195                 FUNCTION_DISCONNECT_PHOTO = new DisconnectPhotoFunction(inApp);
196                 FUNCTION_REMOVE_PHOTO = new RemovePhotoFunction(inApp);
197                 FUNCTION_CORRELATE_PHOTOS = new PhotoCorrelator(inApp);
198                 FUNCTION_ROTATE_PHOTO_LEFT = new RotatePhoto(inApp, false);
199                 FUNCTION_ROTATE_PHOTO_RIGHT = new RotatePhoto(inApp, true);
200                 FUNCTION_PHOTO_POPUP = new PhotoPopupFunction(inApp);
201                 FUNCTION_IGNORE_EXIF_THUMB = new IgnoreExifThumb(inApp);
202                 FUNCTION_CHARTS = new Charter(inApp);
203                 FUNCTION_3D     = new ShowThreeDFunction(inApp);
204                 FUNCTION_DISTANCES = new DistanceFunction(inApp);
205                 FUNCTION_FULL_DETAILS = new ShowFullDetails(inApp);
206                 FUNCTION_AUTOPLAY_TRACK = new AutoplayFunction(inApp);
207                 FUNCTION_ESTIMATE_TIME = new EstimateTime(inApp);
208                 FUNCTION_LEARN_ESTIMATION_PARAMS = new LearnParameters(inApp);
209                 FUNCTION_GET_WEATHER_FORECAST = new GetWeatherForecastFunction(inApp);
210                 FUNCTION_LOAD_AUDIO = new AudioLoader(inApp);
211                 FUNCTION_REMOVE_AUDIO = new RemoveAudioFunction(inApp);
212                 FUNCTION_CORRELATE_AUDIOS = new AudioCorrelator(inApp);
213                 FUNCTION_PLAY_AUDIO = new PlayAudioFunction(inApp);
214                 FUNCTION_STOP_AUDIO = new StopAudioFunction(inApp);
215                 FUNCTION_DISCONNECT_AUDIO = new DisconnectAudioFunction(inApp);
216                 FUNCTION_SET_DISPLAY_SETTINGS = new SetDisplaySettings(inApp);
217                 FUNCTION_SET_MAP_BG = new SetMapBgFunction(inApp);
218                 FUNCTION_SET_DISK_CACHE = new DiskCacheConfig(inApp);
219                 FUNCTION_SET_PATHS = new SetPathsFunction(inApp);
220                 FUNCTION_SET_COLOURS = new SetColours(inApp);
221                 FUNCTION_SET_LANGUAGE = new SetLanguage(inApp);
222                 FUNCTION_SET_ALTITUDE_TOLERANCE = new SetAltitudeTolerance(inApp);
223                 FUNCTION_SET_TIMEZONE = new SelectTimezoneFunction(inApp);
224                 FUNCTION_HELP   = new HelpScreen(inApp);
225                 FUNCTION_SHOW_KEYS = new ShowKeysScreen(inApp);
226                 FUNCTION_ABOUT  = new AboutScreen(inApp);
227                 FUNCTION_CHECK_VERSION= new CheckVersionScreen(inApp);
228         }
229 }