1 /* Copyright 2002-2018 CS Systèmes d'Information
2 * Licensed to CS Systèmes d'Information (CS) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * CS licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17 package org.orekit.gnss;
18
19 import java.util.List;
20
21 import org.orekit.time.AbsoluteDate;
22 import org.orekit.time.TimeStamped;
23
24
25 /** Observation Data set.
26 * @since 9.2
27 */
28 public class ObservationDataSet implements TimeStamped {
29
30 /** Satellite System. */
31 private final SatelliteSystem satelliteSystem;
32
33 /** PRN Number of the satellite observed. */
34 private final int prnNumber;
35
36 /** Date of the observation. */
37 private AbsoluteDate tObs;
38
39 /** List of Observation data. */
40 private List<ObservationData> observationData;
41
42 /** Receiver clock offset (seconds). */
43 private double rcvrClkOffset;
44
45 /**
46 * Simple constructor.
47 * @param satelliteSystem Satellite system
48 * @param prnNumber PRN number
49 * @param tObs Observation date
50 * @param rcvrClkOffset Receiver clock offset (optional, 0 by default)
51 * @param observationData List of observation data
52 */
53 public ObservationDataSet(final SatelliteSystem satelliteSystem,
54 final int prnNumber, final AbsoluteDate tObs,
55 final double rcvrClkOffset, final List<ObservationData> observationData) {
56 this.satelliteSystem = satelliteSystem;
57 this.prnNumber = prnNumber;
58 this.tObs = tObs;
59 this.observationData = observationData;
60 this.rcvrClkOffset = rcvrClkOffset;
61 }
62
63 /** Get Satellite System.
64 * @return satellite system of observed satellite
65 */
66 public SatelliteSystem getSatelliteSystem() {
67 return satelliteSystem;
68 }
69
70 /** Get PRN number.
71 * @return PRN number of the observed satellite
72 */
73 public int getPrnNumber() {
74 return prnNumber;
75 }
76
77 /** {@inheritDoc} */
78 @Override
79 public AbsoluteDate getDate() {
80 return tObs;
81 }
82
83 /** Get list of observation data.
84 * @return list of observation data for the observed satellite
85 */
86 public List<ObservationData> getObservationData() {
87 return observationData;
88 }
89
90 /** Get receiver clock offset.
91 * @return receiver clock offset (it is optional, may be 0)
92 */
93 public double getRcvrClkOffset() {
94 return rcvrClkOffset;
95 }
96
97 }