public class Observation_Record extends java.lang.Object implements CCD_Fields, java.lang.Cloneable, Observation_Fields
A HiRISE observation consists of two groups of parameters: observation
parameters, which apply to the observation as a whole, and CCD parameters,
which apply only to individual CCDs. An observation record can have only one
set of observation parameters, but it may have between 1 and 14 sets of CCD
parameters. The Observation_Record object maintains two vectors for
these data, one for the observation parameters and one for the CCD
parameters. Each of these vectors is similar to that returned by the Database.Query(java.lang.String, int)
method of the Database
class, in that they are vectors of vectors of strings, organized such that
the first vector in each is a list of field names for the remaining vectors,
a "header" vector.
This class is designed primarily to be the data object for the Observation_Record_Broker
class.
Many of the fields in this record are defined by the PTF software interface
specification; the PTF_Record
itself has more information about
those fields.
Modifier and Type | Class and Description |
---|---|
static class |
Observation_Record.ElectraMergeData
A structure containing the data resulting from an MTT-driven merge between
an ELECTRA observation and a HiRISE observation.
|
static class |
Observation_Record.SimplifiedObservation |
static class |
Observation_Record.Stability |
Modifier and Type | Field and Description |
---|---|
static double |
COLD_SETUP_DURATION
The portion of the setup duration that takes place prior to the CPMM_PWR
command.
|
static double |
DEFAULT_OBSERVATION_DURATION
The default value for observation duration.
|
static double |
DEFAULT_SETUP_DURATION
The default value for setup duration.
|
static double |
DURATION_PADDING
A padding added to the minimum observation duration calculation.
|
static double |
EXPOSURE_TIMING_PAD
The time between the issuance of the HIR_EXPOSE_TIME command and the
exposure start time value therein.
|
static double |
FLIGHT_SOFTWARE_READOUT_PAD
The flight software padding in seconds between end of imaging and start of
readout.
|
static java.lang.String |
ID
Class identification name with source code version and date.
|
static java.util.Date |
INVALID_DATE
The oldest date.
|
static double |
MIN_DELAY_FUDGE_FACTOR
A fudge factor for the minimum delay-by duration.
|
BINNING, CCD_NAME, CPMM_RAW_DATA_VOLUME_BYTES, IMAGE_LINES, IMAGE_MEAN, LOOKUP_TABLE_K_VALUE, LOOKUP_TABLE_MAXIMUM, LOOKUP_TABLE_MEDIAN, LOOKUP_TABLE_MINIMUM, LOOKUP_TABLE_NUMBER, LOOKUP_TABLE_TYPE, LUT_TYPE_LINEAR, LUT_TYPE_NONE, LUT_TYPE_SQUARE_ROOT, LUT_TYPE_STORED, PLANNED_CCD_PARAMETERS_TABLE, PLANNED_OBSERVATIONS_ID, PLANNED_SNR, TDI, TRIM_LINES
ALTITUDE, ANCILLARY_DATA, ASCENDING_PASS, CALIBRATION, CENTER_LONGITUDE, CENTER_PLANETOCENTRIC_LATITUDE, CENTER_PLANETOGRAPHIC_LATITUDE, COMMAND_FILE_ASP_RECEIPT_TIME, COMMAND_FILE_DOM_RECEIPT_TIME, COMMAND_FILE_GENERATION_TIME, COMMAND_FILE_MRO_UPLINK_TIME, COMMAND_FILE_PATHNAME, COMMANDER, COMMENT, COMPLETE, CONTRAST_RATIO, COORDINATED_TRACK_HISTORY, COORDINATION, CPMM_00_ON, CPMM_01_ON, CPMM_02_ON, CPMM_03_ON, CPMM_04_ON, CPMM_05_ON, CPMM_06_ON, CPMM_07_ON, CPMM_08_ON, CPMM_09_ON, CPMM_10_ON, CPMM_11_ON, CPMM_12_ON, CPMM_13_ON, CPMM_POWER_FIELDS, CRC_CHECK, CRISM_COORDINATION, CTX_COORDINATION, DEFAULT_FELICS_COMPRESSION_RATIO, DEFUNCT, DEIMOS, DELAY_BY, DESCENDING_PASS, DUST, END_PLANETOCENTRIC_LATITUDE, END_PLANETOGRAPHIC_LATITUDE, ESTIMATED_EMISSION_ANGLE, ESTIMATED_INCIDENCE_ANGLE, ESTIMATED_PHASE_ANGLE, ESTIMATED_RECEIVE_TIME, ESTIMATED_ROLL_ANGLE, EXECUTED, FELICS_COMPRESSION_FLAG, FELICS_COMPRESSION_RATIO, FOOTPRINT_PLANETOCENTRIC_VERTICES, FOOTPRINT_PLANETOGRAPHIC_VERTICES, FROST_ALBEDO, FROST_COVER, HELIOCENTRIC_DISTANCE, HIGH_STABILITY, HIGH_STABILITY_LARGE_ROLL, HIGH_STABILITY_NADIR, HIGH_STABILITY_SMALL_ROLL, HISTORY, ICE, IMAGE_WIDTH, INCOMPLETE, INSTRUMENT_SET, KA_BAND_PLAYBACK, KEEP_STIM_LAMPS_ON_FLAG, KEY_ID, LAST_UPDATE, LSUBS, LUNA, LUT_SELECTOR_BG_FUDGE_FACTOR, LUT_SELECTOR_IR_FUDGE_FACTOR, LUT_SELECTOR_RED_FUDGE_FACTOR, MANUAL_DELAY_BY_FLAG, MARS, MINIMUM_SETUP_DURATIONS, MOON, NO, NOOP, NOPROC, NORMAL_STABILITY, NORMAL_STABILITY_LARGE_ROLL, NORMAL_STABILITY_NADIR, NORMAL_STABILITY_SMALL_ROLL, NOTES, OBSERVATION_DURATION, OBSERVATION_ID, OBSERVATION_TYPE, OFF, OFFSET_CENTER_ALTITUDE, OFFSET_CENTER_LONGITUDE, OFFSET_CENTER_PLANETOCENTRIC_LATITUDE, OFFSET_CENTER_PLANETOGRAPHIC_LATITUDE, ON, OPTICAL_DEPTH, ORBIT_ALTERNATIVES, ORBIT_NUMBER, ORBIT_PASS, OTHER_COORDINATION, PHOBOS, PI_APPROVAL_TO_RELEASE_FLAG, PLANNED, PLANNED_OBSERVATIONS_TABLE, PLANNER, PLAYBACK_MODE, PREDICT_TIME, RAW_DATA_VOLUME_BYTES, RELATIONAL_DATA, RELATIVE_TIMED_SEQUENCE_FLAG, REQUEST_CATEGORY, REQUEST_PRIORITY, REQUESTED, SCAN_EXPOSURE_DURATION, SCATTERING_SOURCE, SCATTERING_SOURCES, SCMF, SEQUENCE_ID, SETUP_DURATION, SKY, SPARE_3, STABILITY, STARS, START_PLANETOCENTRIC_LATITUDE, START_PLANETOGRAPHIC_LATITUDE, STATUS, STATUSES, STIMULATION_LAMP_BLG_ON, STIMULATION_LAMP_NIR_ON, STIMULATION_LAMP_POWER_FIELDS, STIMULATION_LAMP_RED_ON, SUCCESS_ACQUIRED_TIME, SURFACE_ROUGHNESS, SURFACE_TYPE, TARGET_NAME, TARGET_NAMES, X_BAND_PLAYBACK, YES
Constructor and Description |
---|
Observation_Record(java.lang.String observation_id)
Creates an Observation_Record with the specified observation
identification.
|
Observation_Record(java.lang.String observation_id,
java.util.Vector observation_parameters)
Creates an Observation_Record with the specified observation
identification and observation parameters.
|
Observation_Record(java.lang.String observation_id,
java.util.Vector observation_parameters,
java.util.Vector cpmm_parameters)
Creates an Observation_Record with the specified observation
identification, observation parameters vector, and CCD parameters vector.
|
Modifier and Type | Method and Description |
---|---|
int |
active_cpmm_count()
Returns the number of CCDs that are participating ("active") in this
observation.
|
void |
add_cpmm(java.lang.String ccd)
Adds a new, named CCD set to the CCD records.
|
java.util.Vector |
all_cpmm_parameters()
Gets the vector of vectors describing all CCDs for this observation.
|
void |
all_cpmm_parameters(java.util.Vector cpmm_parameters)
Sets the vector of vectors describing all CCDs for this observation.
|
java.lang.Double |
altitude() |
void |
altitude(java.lang.Double altitude) |
java.lang.String |
ancillary_data()
Gets this observation's ancillary data.
|
void |
ancillary_data(java.lang.String ancillary_data)
Sets this observation's ancillary data.
|
void |
appendHistory(java.lang.String message,
java.lang.String operator)
Appends a message to the observation record's history.
|
boolean |
blu_stim_power() |
void |
blu_stim_power(boolean enable) |
java.lang.Integer |
ccd_binning(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_binning(java.lang.String ccd,
int binning)
Sets the xxx value for the indicated CCD.
|
void |
ccd_binning(java.lang.String ccd,
java.lang.Integer binning)
Sets the xxx value for the indicated CCD.
|
static long |
ccd_data_volume_bytes(int image_lines,
int tdi,
int binning,
boolean is_lut_compressed)
Computes the data volume in bytes for a HiRISE CCD.
|
long |
ccd_data_volume_bytes(java.lang.String ccd)
Computes the total data volume in bytes for a named CCD.
|
java.lang.Integer |
ccd_image_lines(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_image_lines(java.lang.String ccd,
int image_lines)
Sets the xxx value for the indicated CCD.
|
void |
ccd_image_lines(java.lang.String ccd,
java.lang.Integer image_lines)
Sets the xxx value for the indicated CCD.
|
java.lang.Double |
ccd_image_mean(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_image_mean(java.lang.String ccd,
double image_mean)
Sets the xxx value for the indicated CCD.
|
void |
ccd_image_mean(java.lang.String ccd,
java.lang.Double image_mean)
Sets the xxx value for the indicated CCD.
|
java.lang.String |
ccd_last_update(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_lut_k_value(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_lut_k_value(java.lang.String ccd,
int lut_k_value)
Sets the xxx value for the indicated CCD.
|
void |
ccd_lut_k_value(java.lang.String ccd,
java.lang.Integer lut_k_value)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_lut_maximum(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_lut_maximum(java.lang.String ccd,
int lut_maximum)
Sets the xxx value for the indicated CCD.
|
void |
ccd_lut_maximum(java.lang.String ccd,
java.lang.Integer lut_maximum)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_lut_median(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_lut_median(java.lang.String ccd,
int lut_median)
Sets the xxx value for the indicated CCD.
|
void |
ccd_lut_median(java.lang.String ccd,
java.lang.Integer lut_median)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_lut_minimum(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_lut_minimum(java.lang.String ccd,
int lut_minimum)
Sets the xxx value for the indicated CCD.
|
void |
ccd_lut_minimum(java.lang.String ccd,
java.lang.Integer lut_minimum)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_lut_number(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_lut_number(java.lang.String ccd,
int lut_number)
Sets the xxx value for the indicated CCD.
|
void |
ccd_lut_number(java.lang.String ccd,
java.lang.Integer lut_number)
Sets the xxx value for the indicated CCD.
|
java.lang.String |
ccd_lut_type(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
boolean |
ccd_lut_type(java.lang.String ccd,
java.lang.String lut_type)
Sets the xxx value for the indicated CCD.
|
static java.lang.String |
ccd_name_to_cpmm_power(java.lang.String ccd)
Gets the name of a CPMM power field given a CCD name.
|
static java.util.Vector |
ccd_parameter_fields()
Gets the static set of field names from the Planned_CCD_Parameters table.
|
java.lang.Integer |
ccd_planned_observations_id(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_planned_observations_id(java.lang.String ccd,
java.lang.Integer planned_observations_id)
Sets the xxx value for the indicated CCD.
|
java.lang.Double |
ccd_planned_snr(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_planned_snr(java.lang.String ccd,
double planned_snr)
Sets the xxx value for the indicated CCD.
|
void |
ccd_planned_snr(java.lang.String ccd,
java.lang.Double planned_snr)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_tdi(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_tdi(java.lang.String ccd,
int tdi)
Sets the xxx value for the indicated CCD.
|
void |
ccd_tdi(java.lang.String ccd,
java.lang.Integer tdi)
Sets the xxx value for the indicated CCD.
|
java.lang.Integer |
ccd_trim_lines(java.lang.String ccd)
Gets the xxx value for the indicated CCD.
|
void |
ccd_trim_lines(java.lang.String ccd,
int trim_lines)
Sets the xxx value for the indicated CCD.
|
void |
ccd_trim_lines(java.lang.String ccd,
java.lang.Integer trim_lines)
Sets the xxx value for the indicated CCD.
|
java.lang.Double |
center_longitude()
Gets the center longitude of the observation.
|
void |
center_longitude(java.lang.Double longitude)
Sets the center longitude of the observation.
|
java.lang.Double |
center_planetocentric_latitude()
Gets the center planetocentric latitude of the observation.
|
void |
center_planetocentric_latitude(java.lang.Double planetocentric_latitude)
Sets the center planetocentric latitude of the observation.
|
java.lang.Double |
center_planetographic_latitude()
Gets the center planetographic latitude of the observation.
|
void |
center_planetographic_latitude(java.lang.Double planetographic_latitude)
Sets the center planetographic latitude of the observation.
|
void |
clean_cpmm(java.lang.String ccd)
Replaces null values in the CCD record with default values.
|
void |
clean_observation()
Replaces null values in certain observation fields with reasonable
default values.
|
java.lang.Object |
clone()
Returns a clone of this observation.
|
java.util.Date |
command_file_asp_receipt_time() |
void |
command_file_asp_receipt_time(java.util.Date command_file_asp_receipt_time) |
java.util.Date |
command_file_dom_receipt_time() |
void |
command_file_dom_receipt_time(java.util.Date command_file_dom_receipt_time) |
java.util.Date |
command_file_generation_time() |
void |
command_file_generation_time(java.util.Date command_file_generation_time) |
java.util.Date |
command_file_mro_uplink_time() |
void |
command_file_mro_uplink_time(java.util.Date command_file_mro_uplink_time) |
java.lang.String |
command_file_pathname()
Gets this observation's command file pathname.
|
void |
command_file_pathname(java.lang.String command_file_pathname)
Sets this observation's command file pathname.
|
java.lang.String |
commander()
Gets the name of the operator who commanded this observation.
|
void |
commander(java.lang.String commander)
Sets the name of the operator who commanded this observation.
|
java.lang.String |
comment()
Gets the observation's comment text.
|
void |
comment(java.lang.String comment)
Sets the observation's comment text.
|
java.lang.Double |
contrast_ratio() |
void |
contrast_ratio(java.lang.Double contrast_ratio) |
java.lang.String |
coordinated_track_history()
Gets the observation's coordinated track history text.
|
void |
coordinated_track_history(java.lang.String coordinated_track_history)
Sets the observation's coordinated track history text.
|
static int |
cpmm_field_index(java.lang.String field_name)
Returns the index of a named field from the CCD parameter set.
|
java.lang.String |
cpmm_parameter(java.lang.String ccd,
java.lang.String field_name)
Returns the value of a named field from the CCD parameters of this
Observation_Record.
|
void |
cpmm_parameter(java.lang.String ccd,
java.lang.String field_name,
java.lang.String field_value)
Alters the value of a named field from the CCD parameters of this
Observation_Record.
|
java.util.Vector |
cpmm_parameters(java.lang.String ccd)
Gets the parameters for a specified CCD.
|
void |
cpmm_parameters(java.lang.String ccd,
java.util.Vector parameters)
Sets the parameters for a specified CCD.
|
java.util.Date |
cpmm_power_start_time()
Deprecated.
use
getCpmmPowerStartTime() instead. |
static java.lang.String |
cpmm_power_to_ccd_name(java.lang.String cpmm_power)
Gets the name of a CCD given a CPMM power field.
|
boolean |
cpmm_power(int cpmm) |
void |
cpmm_power(int cpmm,
boolean enable) |
boolean |
cpmm_power(java.lang.String ccd) |
void |
cpmm_power(java.lang.String ccd,
boolean enable) |
java.lang.Double |
cpmm_powered_on_duration()
Deprecated.
use
getCpmmPoweredOnDuration() instead. |
double |
data_volume_megabits()
Gets the estimated data volume in megabits for this observation.
|
java.lang.Double |
delay_by() |
void |
delay_by(java.lang.Double delay_by) |
java.lang.Double |
elevation() |
void |
elevation(java.lang.Double elevation) |
static java.util.Vector |
empty_ccd_parameters_record()
Gets an empty CCD parameter record.
|
static java.util.Vector |
empty_observation_parameters_record()
Gets an empty observation parameter record.
|
java.lang.Double |
end_planetocentric_latitude()
Gets the ending planetocentric latitude of the observation.
|
void |
end_planetocentric_latitude(java.lang.Double planetocentric_latitude)
Sets the ending planetocentric latitude of the observation.
|
java.lang.Double |
end_planetographic_latitude()
Gets the ending planetographic latitude of the observation.
|
void |
end_planetographic_latitude(java.lang.Double planetographic_latitude)
Sets the ending planetographic latitude of the observation.
|
boolean |
equals(java.lang.Object object)
Indicates whether some other object is equal to this observation.
|
java.lang.Double |
estimated_emission_angle() |
void |
estimated_emission_angle(java.lang.Double estimated_emission_angle) |
java.lang.Double |
estimated_incidence_angle() |
void |
estimated_incidence_angle(java.lang.Double estimated_incidence_angle) |
java.lang.Double |
estimated_phase_angle() |
void |
estimated_phase_angle(java.lang.Double estimated_phase_angle) |
java.util.Date |
estimated_receive_time() |
void |
estimated_receive_time(java.util.Date estimated_receive_time) |
java.lang.Double |
estimated_roll_angle() |
void |
estimated_roll_angle(java.lang.Double estimated_roll_angle) |
boolean |
felics_compression_flag()
Gets the FELICS compression flag.
|
void |
felics_compression_flag(boolean enable)
Sets the FELICS compression flag.
|
java.lang.Double |
felics_compression_ratio() |
void |
felics_compression_ratio(java.lang.Double felics_compression_ratio) |
java.util.List<java.awt.geom.Point2D> |
footprint_planetocentric_vertices() |
void |
footprint_planetocentric_vertices(java.util.List<java.awt.geom.Point2D> planetocentric_vertices) |
java.util.List<java.awt.geom.Point2D> |
footprint_planetographic_vertices() |
void |
footprint_planetographic_vertices(java.util.List<java.awt.geom.Point2D> planetographic_vertices) |
java.lang.Double |
frost_albedo() |
void |
frost_albedo(java.lang.Double frost_albedo) |
java.lang.Double |
frost_cover() |
void |
frost_cover(java.lang.Double frost_cover) |
double |
getAutoDelayDuration() |
double |
getCpmmExposureDuration(int cpmm)
Gets the exposure duration of a CPMM.
|
double |
getCpmmFlightSoftwareDuration(int cpmm)
Gets the exposure duration for a particular CPMM using the HiRISE flight
software algorithm.
|
double |
getCpmmImageDuration(int cpmm)
Gets the image duration of a CPMM.
|
double |
getCpmmPaddedImageDuration(int cpmm)
Gets the image duration of a CPMM with padding added for centering purposes.
|
java.lang.Double |
getCpmmPoweredOnDuration()
Gets the duration for which the CPMMs are powered on and generating heat
during this observation.
|
java.util.Date |
getCpmmPowerStartTime()
Gets the time at which the CPMMs are turned on and begin generating heat.
|
double |
getExposureDuration()
Gets the exposure duration for this observation.
|
static java.lang.String |
getHistoryMessageText(java.lang.String historyLine)
Gets the message text from a line of observation history.
|
double |
getImageDuration()
Gets the image duration for this observation.
|
double |
getMaxDelayDuration()
Gets the maximum delay duration for this observation.
|
double |
getMinDelayDuration()
Gets the minimum delay duration for this observation.
|
double |
getMinObservationDuration()
Gets the minimum observation duration for this observation.
|
double |
getPaddedImageDuration()
Gets the padded image duration for this observation.
|
double |
getReadoutDuration()
Gets the readout duration in seconds.
|
double |
getReadoutStart()
Gets the readout start time relative to the start of exposure.
|
double |
getReadoutStartOffset()
Gets the offset in time between the end of imaging and the start of readout.
|
double |
getTimingOffset()
Gets the RED5 timing offset for this observation.
|
java.lang.Double |
heliocentric_distance() |
void |
heliocentric_distance(java.lang.Double heliocentric_distance) |
java.lang.String |
history() |
void |
history(java.lang.String history) |
java.lang.String |
instrument_set()
Gets this observation's instrument set.
|
void |
instrument_set(java.lang.String instrument_set)
Sets this observation's instrument set.
|
boolean |
is_non_data()
Deprecated.
use
isNonData() instead. |
boolean |
isEarlyReadout()
Indicates whether this observation's readout starts early.
|
boolean |
isElectraMerge()
Returns whether this observation is the result of an MTT HiRISE/ELECTRA
merge operation.
|
boolean |
isElectraRideAlong()
Returns whether this observation is a ride-along on an ELECTRA observation.
|
boolean |
isNonData()
Returns whether this observation does not produce data.
|
boolean |
isSharadRideAlong()
Returns whether this observation is a ride-along on a SHARAD observation.
|
boolean |
isTruncatedExposure()
Indicates whether this observation's exposure is truncated by readout.
|
boolean |
isZeroDelayAllowed() |
boolean |
keep_stim_lamps_on_flag()
Gets the "keep stim lamps on" flag.
|
void |
keep_stim_lamps_on_flag(boolean enable)
Sets the "keep stim lamps on" flag.
|
java.lang.Integer |
key_id()
Gets the observation's key ID.
|
void |
key_id(java.lang.Integer key_id)
Sets the observation's key ID.
|
java.lang.Double |
l_sub_s() |
void |
l_sub_s(java.lang.Double l_sub_s) |
java.lang.String |
last_update_formatted()
Gets the last time this observation record was updated.
|
java.lang.String |
last_update()
Gets the last time this observation record was updated.
|
static int |
line_data_volume_bytes(int binning,
boolean is_lut_compressed)
Computes the data volume in bytes for a single line of HiRISE data,
for a single channel.
|
java.lang.Double |
line_time() |
void |
line_time(java.lang.Double line_time) |
java.lang.Integer |
lut_selector_bg_fudge_factor() |
void |
lut_selector_bg_fudge_factor(java.lang.Integer fudgeFactor) |
java.lang.Integer |
lut_selector_ir_fudge_factor() |
void |
lut_selector_ir_fudge_factor(java.lang.Integer fudgeFactor) |
java.lang.Integer |
lut_selector_red_fudge_factor() |
void |
lut_selector_red_fudge_factor(java.lang.Integer fudgeFactor) |
static java.lang.String |
makeHistoryMessage(java.lang.String message,
java.lang.String operator)
Creates a formatted string suitable for adding to the observation record
history.
|
boolean |
manual_delay_by_flag()
Gets the manual delay-by flag.
|
void |
manual_delay_by_flag(boolean enable)
Sets the manual delay-by flag.
|
boolean |
nir_stim_power() |
void |
nir_stim_power(boolean enable) |
java.lang.String |
notes() |
void |
notes(java.lang.String notes) |
java.lang.Double |
observation_duration() |
void |
observation_duration(java.lang.Double observation_duration) |
java.lang.String |
observation_id()
Gets the unqiue identifier for this Observation_Record.
|
void |
observation_id(java.lang.String the_observation_id)
Sets the unqiue identifier for this Observation_Record.
|
java.lang.String |
observation_mode()
Gets the observation mode for ths observation.
|
static java.util.Vector |
observation_parameter_fields()
Gets the static set of field names from the Planned_Observations table.
|
java.lang.String |
observation_parameter(java.lang.String field_name)
Returns the value of a named field from the observation parameters of this
Observation_Record.
|
void |
observation_parameter(java.lang.String field_name,
java.lang.String field_value)
Alters the value of a named field from the observation parameters of this
Observation_Record.
|
java.util.Vector |
observation_parameters()
Gets the set of observation parameters.
|
void |
observation_parameters(java.util.Vector observation_parameters)
Sets the set of observation parameters.
|
java.lang.Integer |
observation_type()
Gets this observation's type.
|
void |
observation_type(java.lang.Integer observation_type)
Sets this observation's type.
|
java.lang.Double |
offset_center_altitude() |
void |
offset_center_altitude(java.lang.Double altitude) |
java.lang.Double |
offset_center_longitude() |
void |
offset_center_longitude(java.lang.Double longitude) |
java.lang.Double |
offset_center_planetocentric_latitude() |
void |
offset_center_planetocentric_latitude(java.lang.Double planetocentric_latitude) |
java.lang.Double |
offset_center_planetographic_latitude() |
void |
offset_center_planetographic_latitude(java.lang.Double planetographic_latitude) |
java.lang.Double |
optical_depth() |
void |
optical_depth(java.lang.Double optical_depth) |
java.lang.String |
orbit_alternatives()
Gets this observation's orbit alternatives.
|
void |
orbit_alternatives(java.lang.String orbit_alternatives)
Sets this observation's orbit alternatives.
|
java.lang.Integer |
orbit_number()
Gets this observation's orbit number.
|
void |
orbit_number(java.lang.Integer orbit_number)
Sets this observation's orbit number.
|
java.lang.String |
orbit_pass()
Gets this observation's orbit pass.
|
boolean |
orbit_pass(java.lang.String orbit_pass)
Sets this observation's orbit pass.
|
PIRL.PVL.Parameter |
parameter()
Gets the observation record as a PVL parameter.
|
boolean |
pi_approval_to_release_flag()
Gets the flag indicating Principal Investigator approval is required to
release the observation data products to the public.
|
void |
pi_approval_to_release_flag(boolean enable)
Sets the flag indicating Principal Investigator approval is required to
release the observation data products to the public.
|
java.lang.String |
planner()
Gets the name of the operator who planned this observation.
|
void |
planner(java.lang.String planner)
Sets the name of the operator who planned this observation.
|
java.lang.String |
playback_mode()
Gets the observation's playback mode.
|
boolean |
playback_mode(java.lang.String playback_mode)
Sets the observation's playback mode.
|
java.util.Date |
predict_time()
Gets the observation's predict time.
|
void |
predict_time(java.util.Date predict_time)
Sets the observation's predict time.
|
PTF_Record |
ptf_record()
Gets the information in this observation record as a PTF record.
|
void |
ptf_record(PTF_Record ptf_record,
boolean ptf_dominates)
Merges information from a PTF record into this observation record.
|
long |
raw_data_volume_bytes()
Computes the total estimated data volume in bytes for this observation.
|
double |
readout_duration()
Deprecated.
use
getReadoutDuration() instead. |
boolean |
red_stim_power() |
void |
red_stim_power(boolean enable) |
java.lang.String |
relational_data()
Gets this observation's relational data.
|
void |
relational_data(java.lang.String relational_data)
Sets this observation's relational data.
|
boolean |
relative_timed_sequence_flag() |
void |
relative_timed_sequence_flag(boolean enable) |
int |
remove_cpmm(java.lang.String ccd)
Removes a named CCD set from the CCD records.
|
java.lang.String |
request_category()
Gets this observation's request category.
|
void |
request_category(java.lang.String request_category)
Sets this observation's request category.
|
java.lang.Integer |
request_priority()
Gets this observation's request priority.
|
void |
request_priority(java.lang.Integer request_priority)
Sets this observation's request priority.
|
Model.Scattering_Source |
scattering_source()
Gets the HIPHOP scattering source.
|
void |
scattering_source(Model.Scattering_Source scattering_source)
Sets the HIPHOP scattering source.
|
boolean |
scattering_source(java.lang.String scattering_source)
Sets the HIPHOP scattering source.
|
java.lang.String |
scmf()
Gets this observation SCMF name.
|
void |
scmf(java.lang.String scmf)
Sets this observation's SCMF name.
|
void |
setPlannedGeometry(Planned_Geometry geometry)
Sets the observation's planned geometry fields.
|
java.lang.Double |
setup_duration() |
void |
setup_duration(java.lang.Double setup_duration) |
java.lang.Integer |
spare_3() |
void |
spare_3(java.lang.Integer spare_3) |
java.lang.String |
stability()
Gets this observation's stability text.
|
boolean |
stability(java.lang.String stability)
Sets this observation's stability.
|
java.lang.Double |
start_planetocentric_latitude()
Gets the starting planetocentric latitude of the observation.
|
void |
start_planetocentric_latitude(java.lang.Double planetocentric_latitude)
Sets the starting planetocentric latitude of the observation.
|
java.lang.Double |
start_planetographic_latitude()
Gets the starting planetographic latitude of the observation.
|
void |
start_planetographic_latitude(java.lang.Double planetographic_latitude)
Sets the starting planetographic latitude of the observation.
|
java.lang.String |
status()
Gets this observation's status.
|
boolean |
status(java.lang.String status)
Sets this observation's status.
|
boolean |
stim_power(int stim) |
void |
stim_power(int stim,
boolean enable) |
java.util.Date |
success_acquired_time() |
void |
success_acquired_time(java.util.Date success_acquired_time) |
java.lang.Double |
surface_roughness() |
void |
surface_roughness(java.lang.Double surface_roughness) |
java.lang.Double |
surface_type() |
void |
surface_type(java.lang.Double surface_type) |
java.lang.String |
target_name()
Gets this observation's target name.
|
boolean |
target_name(java.lang.String target_name)
Sets this observation's target name.
|
public static final java.lang.String ID
public static final double DEFAULT_SETUP_DURATION
public static final double DEFAULT_OBSERVATION_DURATION
public static final double COLD_SETUP_DURATION
public static final double EXPOSURE_TIMING_PAD
This padding is included in the setup_duration()
value for
absolute-timed sequences, such as the ITL. For relative-timed sequences,
such as the annealing efforts of late 2010, the HiRISE observation block is
spawned with an exposure time in the past, triggering an immediate exposure
when the HIR_EXPOSE_TIME command is issued. This mode of operation removes
the EXPOSURE_TIMING_PAD from the observation timeline reducing the total
powered-on duration and violating the aforementioned flight rules. This
violation is allowed.
public static final java.util.Date INVALID_DATE
public static final double MIN_DELAY_FUDGE_FACTOR
getMinDelayDuration()
,
Constant Field Valuespublic static final double DURATION_PADDING
getMinObservationDuration()
,
Constant Field Valuespublic static final double FLIGHT_SOFTWARE_READOUT_PAD
getReadoutStart()
,
Constant Field Valuespublic Observation_Record(java.lang.String observation_id, java.util.Vector observation_parameters, java.util.Vector cpmm_parameters)
Each of the two vectors must be a vector of vectors, such that the first
element is a vector of field names and the remaining elements are the field
values, as per the results of a Database
Database.Query(java.lang.String, int)
. To ensure the correct functioning of the
Observation_Record methods, the field name row for the observation
parameters vector should be a clone of observation_parameter_fields()
and the field name row for the CCD parameters vector should be a clone of
ccd_parameter_fields()
. Furthermore, the observation parameters
vector should contain only two vectors (including the field names vector)
and the CCD parameters vector should contain at least one vector (the field
names vector) plus as many additional vectors as the observation has active
CCDs. These requirements are not programmatically enforced by the
Observation_Record class as of this release.
If the_observation_parameters is null, a new set of
observation parameters will be created for this Observation_Record.
The first vector in the set will be the correct observation_parameter_fields()
vector. The second data values vector will
contain all null values, except for the Observation_Fields.OBSERVATION_ID
field.
If the_cpmm_parameters is null, a new, empty set of CCD
parameters will be created for this Observation_Record, with the
correct ccd_parameter_fields()
field name vector as the only element.
In any case, the observation ID of the Observation_Record is set to the_observation_id.
The observation's data volume (and the data volume for each active CCD) is calculated when this Observation_Record is created. This calculation ensures that the data volume estimate is correct, in case that held in the database is not.
observation_id
- the unique identifier for the new
Observation_Record; it is not required to be a formal Observation_ID
.observation_parameters
- the set of observation parameters for the
new Observation_Record.cpmm_parameters
- the set of CCD parameters for the new
Observation_Record.public Observation_Record(java.lang.String observation_id, java.util.Vector observation_parameters)
observation_id
- the unique identifier for the new
Observation_Record; it is not required to be a formal Observation_ID
.observation_parameters
- the set of observation parameters for the
new Observation_Record.public Observation_Record(java.lang.String observation_id)
observation_id
- the unique identifier for the new
Observation_Record; it is not required to be a formal Observation_ID
.public java.lang.String observation_id()
public void observation_id(java.lang.String the_observation_id)
Observation_ID
, but it must be
unique if it is to be used with the HiRISE database system, HiCat.the_observation_id
- the new unique identifier for this
Observation_Record.public java.lang.String comment()
public void comment(java.lang.String comment)
comment
- the comment text, which may be null.public java.lang.String notes()
public void notes(java.lang.String notes)
public java.lang.String history()
public void history(java.lang.String history)
public void appendHistory(java.lang.String message, java.lang.String operator)
makeHistoryMessage(String,String)
.message
- a message to append to the observation's history. If
null or the empty string (or just whitespace), nothing is
appended.operator
- the name of the person responsible for the action
that generated the message; may be null, in which case the
system user name property is used.public static java.lang.String makeHistoryMessage(java.lang.String message, java.lang.String operator)
%21s %15s %s
such that the first piece of text is the current date, UTC, in the standard
JPL-style date format (Utilities.getDoyFormat()
). The second element
is the user name, truncated to 15 characters if longer. The final element
is the message argument, coerced into a single line by replacing
all whitespace characters with single spaces. Leading and trailing
whitespace is trimmed.
message
- a message to format as above. If null or the empty
string (or just whitespace), a null string is returned.operator
- the name of the person responsible for the action
that generated the message; may be null, in which case the
system user name property is used.public static java.lang.String getHistoryMessageText(java.lang.String historyLine)
makeHistoryMessage(String,String)
method; this return value is that method's message parameter.
No attempt is made to strip a line ending from the input text.
historyLine
- a line of text presumed to have been produced by the
makeHistoryMessage(String,String)
method.public java.lang.String coordinated_track_history()
public void coordinated_track_history(java.lang.String coordinated_track_history)
coordinated_track_history
- the coordinated track history text,
which may be null.public java.lang.String planner()
public void planner(java.lang.String planner)
planner
- the planner's name.public java.lang.String commander()
public void commander(java.lang.String commander)
commander
- the commander's name.public java.lang.String last_update()
Note: There is no corresponding method to set this time; this field is managed by the database itself.
last_update_formatted()
public java.lang.String last_update_formatted()
DateFormat.FULL
style of the DateFormat
class for both date and
time.last_update()
public java.lang.String request_category()
public void request_category(java.lang.String request_category)
request_category
- the new request category, which may be
null.public java.lang.String ancillary_data()
public void ancillary_data(java.lang.String ancillary_data)
ancillary_data
- the new ancillary data (stereo code), which may be
null.public java.lang.String orbit_alternatives()
public void orbit_alternatives(java.lang.String orbit_alternatives)
orbit_alternatives
- the new list of alternative orbits.public java.lang.String instrument_set()
public void instrument_set(java.lang.String instrument_set)
instrument_set
- the new instrument set.public java.lang.String relational_data()
PTF_Record
's spare 4
field. The HiRISE team uses these data to relate one observation to another.public void relational_data(java.lang.String relational_data)
PTF_Record
's spare 4
field. The HiRISE team uses these data to relate one observation to another.relational_data
- the new relational data.public java.lang.String command_file_pathname()
public void command_file_pathname(java.lang.String command_file_pathname)
command_file_pathname
- the new command file pathname.public java.lang.String scmf()
public void scmf(java.lang.String scmf)
scmf
- the new SCMF name, which may be null.public java.lang.String orbit_pass()
Observation_Fields.ASCENDING_PASS
for the ascending pass and Observation_Fields.DESCENDING_PASS
for the
descending pass.public boolean orbit_pass(java.lang.String orbit_pass)
Observation_Fields.ASCENDING_PASS
for the ascending pass and Observation_Fields.DESCENDING_PASS
for the
descending pass. The pass must be one of these values, or null, or
this method does nothing.orbit_pass
- the new orbit pass.public java.lang.String playback_mode()
Observation_Fields.X_BAND_PLAYBACK
, Observation_Fields.KA_BAND_PLAYBACK
, or null.public boolean playback_mode(java.lang.String playback_mode)
Observation_Fields.X_BAND_PLAYBACK
and Observation_Fields.KA_BAND_PLAYBACK
. null is also
permitted. If playback_mode isn't valid, this method does nothing
and returns false; otherwise it returns true.playback_mode
- the new playback mode.public java.lang.String status()
Observation_Fields.STATUSES
array or null.public boolean status(java.lang.String status)
Observation_Fields.STATUSES
or null. If status is not valid, this
method does nothing and returns false; otherwise it returns
true.status
- the new status.public java.lang.String target_name()
Observation_Fields.TARGET_NAMES
array or null.public boolean target_name(java.lang.String target_name)
target_name
- the new target name.public java.lang.String stability()
public boolean stability(java.lang.String stability)
Observation_Fields.NORMAL_STABILITY
or Observation_Fields.HIGH_STABILITY
, in which case the method
returns true; if any other value is used, the method does nothing
and returns false.
An observation's observation_type()
and stability are strongly
related such that changing stability will change the observation type.
stability
- the new stability.public Model.Scattering_Source scattering_source()
Model.Scattering_Source.DUST
, Model.Scattering_Source.ICE
, or null.
Model.Scattering_Source.DUST
corresponds to the database value Observation_Fields.DUST
. Model.Scattering_Source.ICE
corresponds to the database value
Observation_Fields.ICE
.
Note: If the database somehow contains a value not allowed (i.e., a value
other than Observation_Fields.DUST
, Observation_Fields.ICE
, or null), this method
returns null.
public void scattering_source(Model.Scattering_Source scattering_source)
Model.Scattering_Source.DUST
, Model.Scattering_Source.ICE
, or null.
Model.Scattering_Source.DUST
corresponds to the database value Observation_Fields.DUST
. Model.Scattering_Source.ICE
corresponds to the database value
Observation_Fields.ICE
.scattering_source
- the new scattering source.public boolean scattering_source(java.lang.String scattering_source)
Observation_Fields.DUST
,
Observation_Fields.ICE
, or null. The database value Observation_Fields.DUST
corresponds
to Model.Scattering_Source.DUST
. The database value Observation_Fields.ICE
corresponds to Model.Scattering_Source.ICE
.
If scattering_source isn't valid, this method does nothing and returns false; otherwise it returns true.
scattering_source
- the new scattering source.public java.lang.Integer orbit_number()
public void orbit_number(java.lang.Integer orbit_number)
orbit_number
- the new orbit number, which may be null.public java.lang.Integer observation_type()
public void observation_type(java.lang.Integer observation_type)
An observation's type and stability()
are strong related such that
changing the type may change the stability.
observation_type
- the new observation type.public java.lang.Integer request_priority()
public void request_priority(java.lang.Integer request_priority)
request_priority
- the new request priority.public java.lang.Integer key_id()
public void key_id(java.lang.Integer key_id)
key_id
- the new key ID.public java.lang.Integer spare_3()
public void spare_3(java.lang.Integer spare_3)
public java.lang.Integer lut_selector_red_fudge_factor()
public void lut_selector_red_fudge_factor(java.lang.Integer fudgeFactor)
public java.lang.Integer lut_selector_ir_fudge_factor()
public void lut_selector_ir_fudge_factor(java.lang.Integer fudgeFactor)
public java.lang.Integer lut_selector_bg_fudge_factor()
public void lut_selector_bg_fudge_factor(java.lang.Integer fudgeFactor)
public java.lang.Double estimated_roll_angle()
public void estimated_roll_angle(java.lang.Double estimated_roll_angle)
public java.lang.Double elevation()
public void elevation(java.lang.Double elevation)
public java.lang.Double altitude()
public void altitude(java.lang.Double altitude)
public java.lang.Double offset_center_altitude()
public void offset_center_altitude(java.lang.Double altitude)
public java.lang.Double estimated_phase_angle()
public void estimated_phase_angle(java.lang.Double estimated_phase_angle)
public java.lang.Double estimated_emission_angle()
public void estimated_emission_angle(java.lang.Double estimated_emission_angle)
public java.lang.Double estimated_incidence_angle()
public void estimated_incidence_angle(java.lang.Double estimated_incidence_angle)
public java.lang.Double l_sub_s()
public void l_sub_s(java.lang.Double l_sub_s)
public java.lang.Double heliocentric_distance()
public void heliocentric_distance(java.lang.Double heliocentric_distance)
public java.lang.Double line_time()
public void line_time(java.lang.Double line_time)
public java.lang.Double setup_duration()
public void setup_duration(java.lang.Double setup_duration)
public java.lang.Double observation_duration()
public void observation_duration(java.lang.Double observation_duration)
public java.lang.Double delay_by()
public void delay_by(java.lang.Double delay_by)
public java.lang.Double felics_compression_ratio()
public void felics_compression_ratio(java.lang.Double felics_compression_ratio)
public java.lang.Double contrast_ratio()
public void contrast_ratio(java.lang.Double contrast_ratio)
public java.lang.Double optical_depth()
public void optical_depth(java.lang.Double optical_depth)
public java.lang.Double surface_roughness()
public void surface_roughness(java.lang.Double surface_roughness)
public java.lang.Double frost_cover()
public void frost_cover(java.lang.Double frost_cover)
public java.lang.Double frost_albedo()
public void frost_albedo(java.lang.Double frost_albedo)
public java.lang.Double surface_type()
public void surface_type(java.lang.Double surface_type)
public java.util.Date predict_time()
Because the Observation_Fields.PREDICT_TIME
field is not a DATETIME field,
but rather a VARCHAR field, it is possible its contents are not a
valid text date. If so, this method returns INVALID_DATE
.
public void predict_time(java.util.Date predict_time)
predict_time
- the predict time; may be null.public java.util.Date estimated_receive_time()
public void estimated_receive_time(java.util.Date estimated_receive_time)
public java.util.Date command_file_generation_time()
public void command_file_generation_time(java.util.Date command_file_generation_time)
public java.util.Date command_file_asp_receipt_time()
public void command_file_asp_receipt_time(java.util.Date command_file_asp_receipt_time)
public java.util.Date command_file_dom_receipt_time()
public void command_file_dom_receipt_time(java.util.Date command_file_dom_receipt_time)
public java.util.Date command_file_mro_uplink_time()
public void command_file_mro_uplink_time(java.util.Date command_file_mro_uplink_time)
public java.util.Date success_acquired_time()
public void success_acquired_time(java.util.Date success_acquired_time)
public boolean manual_delay_by_flag()
Note: The manual calculation of the delay time may introduce errors into the automated processing of the resulting observation files by the HiRISE ground data system. This flag must be used with care.
public void manual_delay_by_flag(boolean enable)
Note: The manual calculation of the delay time may introduce errors into the automated processing of the resulting observation files by the HiRISE ground data system. This flag must be used with care.
enable
- whether to enable this flag or not.public boolean relative_timed_sequence_flag()
public void relative_timed_sequence_flag(boolean enable)
public boolean felics_compression_flag()
Note: FELICS compression can only be used if every CCD participating in the observation is LUT-compressed.
public void felics_compression_flag(boolean enable)
Note: FELICS compression can only be used if every CCD participating in the observation is LUT-compressed. At present, setting this flag does not check that the necessary conditions are met. It is up to the user, such as HiPlan or HiCommand, to ensure that these conditions are met.
enable
- whether to enable this flag or not.public boolean keep_stim_lamps_on_flag()
This flag is relatively safe, because every HiRISE observation block starts with the automatic deactivation of the stim lamps if they are not to be used in the observation. Thus, if the lamps were accidentally left on at the end of this observation, they will still be shut off at the start of the next. Thus, two actions are required to keep the lamps on: this observation must leave them on, and the next observation must explicitly use them.
public void keep_stim_lamps_on_flag(boolean enable)
This flag is relatively safe, because every HiRISE observation block starts with the automatic deactivation of the stim lamps if they are not to be used in the observation. Thus, if the lamps were accidentally left on at the end of this observation, they will still be shut off at the start of the next. Thus, two actions are required to keep the lamps on: this observation must leave them on, and the next observation must explicitly use them.
enable
- whether to enable this flag or not.public boolean pi_approval_to_release_flag()
public void pi_approval_to_release_flag(boolean enable)
enable
- whether to enable this flag or not.public boolean cpmm_power(java.lang.String ccd) throws Invalid_Argument_Exception
Invalid_Argument_Exception
public void cpmm_power(java.lang.String ccd, boolean enable) throws Invalid_Argument_Exception
Invalid_Argument_Exception
public boolean cpmm_power(int cpmm) throws Out_of_Range_Exception
Out_of_Range_Exception
public void cpmm_power(int cpmm, boolean enable) throws Out_of_Range_Exception
Out_of_Range_Exception
public boolean stim_power(int stim) throws Out_of_Range_Exception
stim
- 0 for RED, 1 for BLU, 2 for NIR.Out_of_Range_Exception
public void stim_power(int stim, boolean enable) throws Out_of_Range_Exception
stim
- 0 for RED, 1 for BLU, 2 for NIR.Out_of_Range_Exception
public boolean red_stim_power()
public void red_stim_power(boolean enable)
public boolean blu_stim_power()
public void blu_stim_power(boolean enable)
public boolean nir_stim_power()
public void nir_stim_power(boolean enable)
public java.lang.Double center_planetocentric_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
manual_delay_by_flag()
public void center_planetocentric_latitude(java.lang.Double planetocentric_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
planetocentric_latitude
- the center planetocentric latitude, which
may be null.manual_delay_by_flag()
public java.lang.Double center_planetographic_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
manual_delay_by_flag()
public void center_planetographic_latitude(java.lang.Double planetographic_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
planetographic_latitude
- the center planetographic latitude, which
may be null.manual_delay_by_flag()
public java.lang.Double center_longitude()
The longitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This longitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
manual_delay_by_flag()
public void center_longitude(java.lang.Double longitude)
Note: This longitude is not necessarily the center of the actual observation. It is really the center of the target swath in which the observation is located. If the observation's delay time is calculated automatically, this value will be the center of the observation. If the delay time is calculated manually, it may not be so.
longitude
- the center longitude, which may be null.manual_delay_by_flag()
public java.lang.Double offset_center_planetocentric_latitude()
public void offset_center_planetocentric_latitude(java.lang.Double planetocentric_latitude)
public java.lang.Double offset_center_planetographic_latitude()
public void offset_center_planetographic_latitude(java.lang.Double planetographic_latitude)
public java.lang.Double offset_center_longitude()
public void offset_center_longitude(java.lang.Double longitude)
public java.lang.Double start_planetocentric_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the start of the actual observation. It is really the start of the target swath in which the observation is located.
public void start_planetocentric_latitude(java.lang.Double planetocentric_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the start of the actual observation. It is really the start of the target swath in which the observation is located.
planetocentric_latitude
- the starting planetocentric latitude, which
may be null.public java.lang.Double start_planetographic_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the start of the actual observation. It is really the start of the target swath in which the observation is located.
public void start_planetographic_latitude(java.lang.Double planetographic_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the start of the actual observation. It is really the start of the target swath in which the observation is located.
planetographic_latitude
- the starting planetographic latitude, which
may be null.public java.lang.Double end_planetocentric_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the end of the actual observation. It is really the end of the target swath in which the observation is located.
public void end_planetocentric_latitude(java.lang.Double planetocentric_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the end of the actual observation. It is really the end of the target swath in which the observation is located.
planetocentric_latitude
- the ending planetocentric latitude, which
may be null.public java.lang.Double end_planetographic_latitude()
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
Note: This latitude is not necessarily the end of the actual observation. It is really the end of the target swath in which the observation is located.
public void end_planetographic_latitude(java.lang.Double planetographic_latitude)
The latitude may be null. This situation arises for any observation that is not targeted at Mars.
It is not necessary to set both the planetocentric and planetographic latitudes of an observation. Because the two are mathematically related, changing one will perforce change the other.
Note: This latitude is not necessarily the end of the actual observation. It is really the end of the target swath in which the observation is located.
planetographic_latitude
- the ending planetographic latitude, which
may be null.public java.util.List<java.awt.geom.Point2D> footprint_planetocentric_vertices()
public void footprint_planetocentric_vertices(java.util.List<java.awt.geom.Point2D> planetocentric_vertices)
public java.util.List<java.awt.geom.Point2D> footprint_planetographic_vertices()
public void footprint_planetographic_vertices(java.util.List<java.awt.geom.Point2D> planetographic_vertices)
public java.lang.String observation_mode()
This parameter is not stored in the database, but it is reflected in the HiRISE PTF record.
public java.lang.Integer ccd_planned_observations_id(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_planned_observations_id(java.lang.String ccd, java.lang.Integer planned_observations_id)
ccd
- the name of the CCD in question.planned_observations_id
- the new value for xxx; may be null.public java.lang.Integer ccd_binning(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_binning(java.lang.String ccd, java.lang.Integer binning)
ccd
- the name of the CCD in question.binning
- the new value for xxx; may be null.public void ccd_binning(java.lang.String ccd, int binning)
ccd
- the name of the CCD in question.binning
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_tdi(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_tdi(java.lang.String ccd, java.lang.Integer tdi)
ccd
- the name of the CCD in question.tdi
- the new value for xxx; may be null.public void ccd_tdi(java.lang.String ccd, int tdi)
ccd
- the name of the CCD in question.tdi
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_image_lines(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_image_lines(java.lang.String ccd, java.lang.Integer image_lines)
ccd
- the name of the CCD in question.image_lines
- the new value for xxx; may be null.public void ccd_image_lines(java.lang.String ccd, int image_lines)
ccd
- the name of the CCD in question.image_lines
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_trim_lines(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_trim_lines(java.lang.String ccd, java.lang.Integer trim_lines)
ccd
- the name of the CCD in question.trim_lines
- the new value for xxx; may be null.public void ccd_trim_lines(java.lang.String ccd, int trim_lines)
ccd
- the name of the CCD in question.trim_lines
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.String ccd_lut_type(java.lang.String ccd)
ccd
- the name of the CCD in question.public boolean ccd_lut_type(java.lang.String ccd, java.lang.String lut_type)
ccd
- the name of the CCD in question.lut_type
- the new value for xxx; may be null.public java.lang.Integer ccd_lut_minimum(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_lut_minimum(java.lang.String ccd, java.lang.Integer lut_minimum)
ccd
- the name of the CCD in question.lut_minimum
- the new value for xxx; may be null.public void ccd_lut_minimum(java.lang.String ccd, int lut_minimum)
ccd
- the name of the CCD in question.lut_minimum
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_lut_maximum(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_lut_maximum(java.lang.String ccd, java.lang.Integer lut_maximum)
ccd
- the name of the CCD in question.lut_maximum
- the new value for xxx; may be null.public void ccd_lut_maximum(java.lang.String ccd, int lut_maximum)
ccd
- the name of the CCD in question.lut_maximum
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_lut_median(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_lut_median(java.lang.String ccd, java.lang.Integer lut_median)
ccd
- the name of the CCD in question.lut_median
- the new value for xxx; may be null.public void ccd_lut_median(java.lang.String ccd, int lut_median)
ccd
- the name of the CCD in question.lut_median
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_lut_k_value(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_lut_k_value(java.lang.String ccd, java.lang.Integer lut_k_value)
ccd
- the name of the CCD in question.lut_k_value
- the new value for xxx; may be null.public void ccd_lut_k_value(java.lang.String ccd, int lut_k_value)
ccd
- the name of the CCD in question.lut_k_value
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Integer ccd_lut_number(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_lut_number(java.lang.String ccd, java.lang.Integer lut_number)
ccd
- the name of the CCD in question.lut_number
- the new value for xxx; may be null.public void ccd_lut_number(java.lang.String ccd, int lut_number)
ccd
- the name of the CCD in question.lut_number
- the new value for xxx.Integer.valueOf(java.lang.String, int)
public java.lang.Double ccd_image_mean(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_image_mean(java.lang.String ccd, java.lang.Double image_mean)
ccd
- the name of the CCD in question.image_mean
- the new value for xxx; may be null.public void ccd_image_mean(java.lang.String ccd, double image_mean)
ccd
- the name of the CCD in question.image_mean
- the new value for xxx.Double.valueOf(java.lang.String)
public java.lang.Double ccd_planned_snr(java.lang.String ccd)
ccd
- the name of the CCD in question.public void ccd_planned_snr(java.lang.String ccd, java.lang.Double planned_snr)
ccd
- the name of the CCD in question.planned_snr
- the new value for xxx; may be null.public void ccd_planned_snr(java.lang.String ccd, double planned_snr)
ccd
- the name of the CCD in question.planned_snr
- the new value for xxx.Double.valueOf(java.lang.String)
public java.lang.String ccd_last_update(java.lang.String ccd)
ccd
- the name of the CCD in question.public java.util.Vector observation_parameters()
WARNING If this observation record's FELICS compression is enabled
and its compression ratio is null, invoking this method will set
the ratio to Observation_Fields.DEFAULT_FELICS_COMPRESSION_RATIO
.
public void observation_parameters(java.util.Vector observation_parameters)
observation_parameters
- the set of observation parameters for this
observation.public java.util.Vector all_cpmm_parameters()
public void all_cpmm_parameters(java.util.Vector cpmm_parameters)
cpmm_parameters
- the vector of vectors of CCD parameters for this
observation.public java.util.Vector cpmm_parameters(java.lang.String ccd) throws Observation_Record_Exception
Valid CCD names are found in the CCD_NAMES
array.
ccd
- the name of the CCD of interest.Observation_Record_Exception
- if ccd is not a
valid CCD name.public void cpmm_parameters(java.lang.String ccd, java.util.Vector parameters) throws Observation_Record_Exception
ccd_parameter_fields()
, but no other
safety measure is taken as of this release, due to the amorphous nature of a
vector.
This method sets the parameters using a clone of the vector, not the original vector.
Valid CCD names are found in the CCD_NAMES
array.
ccd
- the name of the CCD of interest.parameters
- the set of parameters for the target CCD record.Observation_Record_Exception
- if the ccd is not
a valid CCD name or if the size of parameters is not the same as the
size of the ccd_parameter_fields()
vector.public java.lang.String observation_parameter(java.lang.String field_name) throws Observation_Record_Exception
Leading and trailing whitespace is stripped from the returned text.
WARNING If this observation record's FELICS compression is enabled
and its compression ratio is null, invoking this method will set
the ratio to Observation_Fields.DEFAULT_FELICS_COMPRESSION_RATIO
.
field_name
- the name of the observation parameter field from
which to retrieve the value. The field names are defined by the
constants of this class.Observation_Record_Exception
- if field_name is not in
the set of observation_parameter_fields()
.public void observation_parameter(java.lang.String field_name, java.lang.String field_value) throws Observation_Record_Exception
Leading and trailing whitespace is stripped from the input field text.
field_name
- the name of the observation parameter field to be
altered. The field names are defined by Observation_Fields
.field_value
- the new value of the observation parameter field to
be altered.Observation_Record_Exception
- if field_name is not in
the set of ()
.public java.lang.String cpmm_parameter(java.lang.String ccd, java.lang.String field_name) throws Observation_Record_Exception
Valid CCD names are found in the CCD_NAMES
array.
Leading and trailing whitespace is stripped from the returned text.
ccd
- the name of the CCD of interest.field_name
- the name of the CCD parameter field from which to
retrieve the value. The field names are defined by CCD_Fields
.Observation_Record_Exception
- if field_name is not in
the set of ()
or if ccd is
not in the set of Instrument.CCD_NAMES
.public void cpmm_parameter(java.lang.String ccd, java.lang.String field_name, java.lang.String field_value) throws Observation_Record_Exception
The CCD_Fields.CCD_NAME
field cannot be altered with this method; attempts to
do so will throw an Observation_Record_Exception
.
Valid CCD names are found in the CCD_NAMES
array.
Leading and trailing whitespace is stripped from the input field text.
ccd
- the name of the CCD of interest.field_name
- the name of the CCD parameter field that will be updated
by this method. The field names are defined by the constants of this
class.field_value
- the value to which to set the field.Observation_Record_Exception
- if field_name is not in
the set of ()
or if ccd is
not in the set of Instrument.CCD_NAMES
. Also thrown if
field_name is CCD_Fields.CCD_NAME
.public java.lang.Object clone()
clone
in class java.lang.Object
public boolean equals(java.lang.Object object)
If any of these is false, this method returns false.
Note that this class does not override the Object.hashCode()
method as of
this release, so it is in violation of the Object.hashCode()
contract that
states that equal objects must have equal hash codes.
equals
in class java.lang.Object
object
- the reference object with which to compare.public void add_cpmm(java.lang.String ccd) throws Observation_Record_Exception
CCD_Fields.PLANNED_OBSERVATIONS_ID
. When a CCD record is added, its
corresponding power-on field in the observation parameters is set to Observation_Fields.ON
.ccd
- the name of the CCD for the record to be added.Observation_Record_Exception
- if ccd is not in
the set of Instrument.CCD_NAMES
or if the CCD already exists in
the Observation_Record.clean_cpmm(java.lang.String)
public int remove_cpmm(java.lang.String ccd) throws Observation_Record_Exception
Observation_Fields.OFF
. If the CCD is not in the set of CCD records, this method does
nothing and returns 0.ccd
- the name of the CCD for the record to be removed.Observation_Record_Exception
- if ccd is not in
the set of Instrument.CCD_NAMES
.public void clean_cpmm(java.lang.String ccd) throws Observation_Record_Exception
CCD_Fields.PLANNED_OBSERVATIONS_ID
field is an exception. It is not set to a
default value if it is null, because the Observation_Record_Broker
class entirely manages that field. If no CCD
record with the specified CCD name exists in the
Observation_Record, this method does nothing.
ccd
- the name for the CCD for the record to be cleaned.Observation_Record_Exception
- if ccd is not in
the set of Instrument.CCD_NAMES
.public void clean_observation()
Observation_Fields.PLAYBACK_MODE
field.
public PTF_Record ptf_record()
PTF_Record.PTF_Record(Observation_Record)
public void ptf_record(PTF_Record ptf_record, boolean ptf_dominates)
public PIRL.PVL.Parameter parameter()
public int active_cpmm_count()
Observation_Fields.CPMM_00_ON
) has the
value indicated by Observation_Fields.ON
.public boolean isNonData()
Observation_Fields.TARGET_NAME
is Observation_Fields.NOOP
or Observation_Fields.CRC_CHECK
or if its Observation_Fields.STATUS
is Observation_Fields.DEFUNCT
. If so, this
method returns true; otherwise it returns false.public boolean isElectraMerge()
comment()
field ends with an ELECTRA merge notation
.public boolean isElectraRideAlong()
coordinated_track_history()
field.public boolean isSharadRideAlong()
coordinated_track_history()
field.public void setPlannedGeometry(Planned_Geometry geometry)
geometry
- the planned geometry data; may be null, in
which case the fields are not updated.public double getAutoDelayDuration()
public double getMinDelayDuration()
RED5 timing
offset
in seconds. (Non-Mars targets allow for the special value
of 0.0 seconds, but the minimum is otherwise still the RED5 timing offset.)
A small fudge factor
is applied to the
minimum delay duration, increasing its value slightly to avoid rounding
problems when the timing offset is applied.
public boolean isZeroDelayAllowed()
public double getMaxDelayDuration()
observation duration
); it is the PTF
observation duration minus the observation's exposure duration
plus the RED5 timing offset
.
If the observation duration field is null, this method returns 0.0. Note also that if the observation duration is defined and is less than the exposure duration, a negative value is returned.
public double getMinObservationDuration()
exposure duration
, starting as indicated by the HiRISE EXPOSE_TIME
command and ending with the last image line.
The ceiling
function is applied to the exposure
duration, and an additional 3 seconds
is added.
public double getTimingOffset()
The timing offset is just the RED5 offset multiplied by the current line time. This offset must be subtracted from all timing calculations. For example, if a 60,000-line observation is centered at time Tp, the timing must start at
Tp - 30,000t - offsetRED5t
where t is the line time and offsetRED5t is the return value of this method.
If the line time
has not yet been set for this
observation (null), or if the line time is less than the minimum
(Instrument.LINE_TIME_PRE_OFFSET
), this method returns 0.
public double getExposureDuration()
( Li + Lc + Lt/b + La ) * b * t
where Li is the number of binned image lines, Lc is the number of calibration lines, Lt is the number of trim lines, La is the number of trim addition (reverse clock) lines (180), b is the binning, and t is the line time in seconds.
The observation's PTF observation_duration()
must be at least
this long.
public double getPaddedImageDuration()
reverse clock lines
. The calibration lines and reverse clock lines are
added twice:
( Li + 2.0Lc + 2.0La ) * b * t
where Li is the number of binned image lines, Lc is the number of calibration lines, La is the number of trim addition (reverse clock) lines (180), b is the binning, and t is the line time in seconds.
This duration is evaluated for each active CCD, and the largest of these is
returned. The doubling of the calibration and reverse clock lines allows
this quantity to be used in centering the imaging within the observation's
PTF observation_duration()
.
public double getImageDuration()
Li * b * t
where Li is the number of binned image lines, b is the binning, and t is the line time in seconds.
public double getCpmmExposureDuration(int cpmm)
( Li + Lc + Lt/b + La ) * b * t
where Li is the number of binned image lines, Lc is the number of calibration lines, Lt is the number of trim lines, La is the number of trim addition (reverse clock) lines (180), b is the binning, and t is the line time in microseconds.
cpmm
- the CPMM number.public double getCpmmPaddedImageDuration(int cpmm)
Instrument.TRIM_ADDITION_LINES
, all multiplied by the binning and the line
time:
( Li + 2.0Lc + 2.0La ) * b * t
where Li is the number of binned image lines, Lc is the number of calibration lines, La is the number of trim addition (reverse clock) lines (180), b is the binning, and t is the line time in microseconds.
cpmm
- the CPMM number.public double getCpmmImageDuration(int cpmm)
Li * b * t
where Li is the number of binned image lines, b is the binning, and t is the line time in microseconds.
cpmm
- the CPMM number.public double getCpmmFlightSoftwareDuration(int cpmm)
( Li + Lc + Lt/b ) * b * t
where Li is the number of binned image lines, Lc is the number of calibration lines, Lt is the number of trim lines, b is the binning, and t is the line time in microseconds.
cpmm
- the CPMM numberpublic java.util.Date getCpmmPowerStartTime()
predict_time()
minus half the
observation_duration()
minus the setup_duration()
plus 21
seconds plus the delay_by()
duration. If any of these fields
(except delay) is null, or if the predict time cannot be parsed,
this method returns null. If the delay time is null, 0 is
used for the delay time.
Note: This time is UTC SCET, not ET. It does not include leapsecond corrections or spacecraft clock drift.
public java.lang.Double getCpmmPoweredOnDuration()
setup
duration
minus 21 seconds, plus the exposure
duration
, plus the readout start offset
,
plus the readout duration
:
D = DS - 21 + DE + DRO + DR
where DS is the setup duration, DE is the exposure duration, DRO is the readout start offset, and DR is the readout duration.
If the observation is a non-data
producing observation,
this method returns 0. If the setup duration is null, this method
returns null.
public long raw_data_volume_bytes()
Observation_Fields.FELICS_COMPRESSION_RATIO
if FELICS compression is
enabled.
No attempt is made to check the validity of using FELICS compression, which must not be used if any one CCD is not LUT compressed.
If the observation is a non-data
producing observation,
the returned data volume is 0.
This volume is called "raw" because it is the observation's data volume in the MRO raw SSR partition; the file size is slightly different in the framed partition.
WARNING If this observation record's FELICS compression is enabled
and its compression ratio is null, invoking this method will set
the ratio to Observation_Fields.DEFAULT_FELICS_COMPRESSION_RATIO
.
public double data_volume_megabits()
WARNING If this observation record's FELICS compression is enabled
and its compression ratio is null, invoking this method will set
the ratio to Observation_Fields.DEFAULT_FELICS_COMPRESSION_RATIO
.
raw_data_volume_bytes()
public long ccd_data_volume_bytes(java.lang.String ccd)
CCD_Fields.CPMM_RAW_DATA_VOLUME_BYTES
is set to the computed value, which is
also returned by this method.
Warning: If the values for CCD_Fields.IMAGE_LINES
, CCD_Fields.TDI
, or
CCD_Fields.BINNING
are not valid for this CCD, the computed data volume will
be meaningless. No check is made to ensure their validity.
ccd
- the name of the CCD for which data volume will be computed and
set.CCD_Record.getDataVolumeBytes(int,int,int,boolean)
,
Instrument.CCD_NAMES
public double getReadoutStart()
reverse clocking
in its
calculation. This lack results in readout starting less than 2.5 seconds
after the end of exposure; with large line times, it can even start while
the instrument is still exposing, possibly resulting in one or more CCDs
being truncated.
Readout starts at time TR:
TR = TE + TRSO
where TE is given by getExposureDuration()
and
TRSO is given by getReadoutStartOffset()
.
If the observation is a non-data
producing observation,
or if this observation currently has no line time, this method returns 0.
FLIGHT_SOFTWARE_READOUT_PAD
public double getReadoutStartOffset()
reverse clocking
in its
calculation. This lack results in a readout start offset generally less than
2.5 seconds; with large line times, the offset can even be negative,
resulting in readout starting before the last CPMM has finished exposing.
Readout start offset TRSO is given by
TRSO = TR - TE
where TR is given by getReadoutStart()
and
TE is given by getExposureDuration()
.
If the observation is a non-data
producing observation,
this method returns 0.
FLIGHT_SOFTWARE_READOUT_PAD
public double getReadoutDuration()
Readout usually starts some number of seconds after the end of the exposure:
TR = TE + TRSO
where TR is the start of readout relative to the start of
exposure, TE is the exposure duration given by getExposureDuration()
and TRSO is given by getReadoutStartOffset()
The readout start offset is sometimes negative,
however, meaning the readout starts before the end of the exposure.
If the observation is a non-data
producing observation,
this method returns 0.
public boolean isEarlyReadout()
180bt > 2.5 s
where b is a CCD's binning and t is the observation's line time.
FLIGHT_SOFTWARE_READOUT_PAD
,
getReadoutStartOffset()
public boolean isTruncatedExposure()
TRO + DRO > TE
where TRO is the time of readout start (getReadoutStart()
), DRO is the readout duration (getReadoutDuration()
), and TE is the end of exposure
time ({link #getExposureDuration()}).
This situation arises when line times are particularly long:
180bt > 2.5 s
where b is a CCD's binning and t is the observation's line time. Note, however, that long line time is a necessary but not sufficient condition to indicate exposure truncation.
FLIGHT_SOFTWARE_READOUT_PAD
,
getReadoutStartOffset()
public static java.util.Vector observation_parameter_fields()
public static java.util.Vector empty_observation_parameters_record()
public static java.util.Vector ccd_parameter_fields()
public static java.util.Vector empty_ccd_parameters_record()
public static java.lang.String ccd_name_to_cpmm_power(java.lang.String ccd)
ccd
- the name of the CCD in question.public static java.lang.String cpmm_power_to_ccd_name(java.lang.String cpmm_power)
cpmm_power
- the CPMM power field in question.public static int cpmm_field_index(java.lang.String field_name) throws Observation_Record_Exception
field_name
- the name of the CCD parameter field. The field names
are defined by the constants of this class.Observation_Record_Exception
- if field_name is not in
the set of ccd_parameter_fields()
.public static long ccd_data_volume_bytes(int image_lines, int tdi, int binning, boolean is_lut_compressed)
Warning: No effort is made to verify that that the supplied values for line count, TDI stages, or binning are valid.
image_lines
- the number of binned image lines to be aquired; this
value does not include the calibration lines.tdi
- the number of time delay integration stages.binning
- the binning factor.is_lut_compressed
- true if the CCD data are
LUT-compressed, false if not.Instrument.calibration_lines_minimum(int, int)
,
CCD_Record.getDataVolumeBytes(int,int,int,boolean)
public static int line_data_volume_bytes(int binning, boolean is_lut_compressed)
Warning: No effort is made to verify that that the supplied value for binning is valid.
binning
- the binning for the line.is_lut_compressed
- true if the line is LUT-compressed,
false otherwise.CCD_Record.getLineDataVolumeBytes(int,boolean)
@Deprecated public boolean is_non_data()
isNonData()
instead.Observation_Fields.TARGET_NAME
is Observation_Fields.NOOP
or Observation_Fields.CRC_CHECK
or if its Observation_Fields.STATUS
is Observation_Fields.DEFUNCT
. If so, this
method returns true; otherwise it returns false.@Deprecated public double readout_duration()
getReadoutDuration()
instead.The readout rate is 24 megabits per second; these are base-10 megabits.
if the observation is a non-data
producing observation,
this method returns 0.
@Deprecated public java.util.Date cpmm_power_start_time()
getCpmmPowerStartTime()
instead.predict_time()
minus half the observation_duration()
minus the setup_duration()
plus 21 seconds
plus the delay_by()
time. If any of these fields (except delay) is
null, or if the predict time cannot be parsed, this method returns
null. If the delay time is null, 0 is used for the delay
time.
Note: This time is UTC SCET, not ET. It does not include leapsecond corrections or spacecraft clock drift.
This method does not account for the vagaries of timing involved in a
relative-timed sequence. In such a case, the CPMM power start time isn't
knowable a priori, so adjustments due to the bypassed EXPOSURE_TIMING_PAD
are meaningless.
@Deprecated public java.lang.Double cpmm_powered_on_duration()
getCpmmPoweredOnDuration()
instead.setup_duration()
minus
21 seconds plus the actual_exposure_duration()
plus the getReadoutDuration()
. If the setup duration is null, this method
returns null.
if the observation is a non-data
producing observation,
this method returns 0.
Copyright \ (C) Arizona Board of Regents on behalf of the \ Planetary Image Research Laboratory, Lunar and \ Planetary Laboratory at the University of Arizona