package edu.colostate.vchill.iris;
import java.nio.ByteBuffer;
/**
* Class to represent product_end structure
*
* @author Joseph Hardin <josephhardinee@gmail.com>
*/
public class product_end {
private String site_name;
private String iris_version_product;
private String iris_version_ingest;
private ymds_time oldest_ingest;
private short local_time_offset;
private String hardware_name_ingest;
private String site_name_ingest;
private short minutes_recorded_west;
private long lat_of_center;
private long lon_of_center;
private short ground_height;
private short radar_height;
private int PRF;
private int pulse_width;
private int dsp_type;
private int trigger_rate_scheme;
private short samples_used;
private String clutter_filter_file;
private int num_linear_filter;
private int wavelength;
private int truncation_height;
private int range_first_bin;
private int range_last_bin;
private int num_output_bins;
private int flag;
private short ingest_files_used;
private int polarization_type;
private short io_cal_h;
private short noise_cal_h;
private short C_h;
private int receiver_bandwidth;
private short current_noise_h;
private long projection_info;
private long standard_parallel_2;
private long equatorial_radius;
private long flattening;
private long fault_status;
private long mask_input_sites;
private int num_of_log_filters;
private int cluttermap_applied;
private long latitude_proj_ref;
private long longitude_proj_ref;
private short product_sequence_number;
private short melting_level;
private short height_radar_above_ref;
private short elements_in_product_array;
private short mean_wind_speed;
private int mean_wind_direction;
private String tz_name_data;
private int BeginPosition;
private byte[] TempBuf;
private byte TempByte;
public product_end(ByteBuffer in_buf) {
BeginPosition = in_buf.position();
try {
TempBuf = new byte[16];
in_buf.get(TempBuf);
site_name = new String(TempBuf, "UTF-8");
TempBuf = new byte[8];
in_buf.get(TempBuf);
iris_version_product = new String(TempBuf, "UTF-8");
TempBuf = new byte[8];
in_buf.get(TempBuf);
iris_version_ingest = new String(TempBuf, "UTF-8");
oldest_ingest = new ymds_time(in_buf);
in_buf.position(in_buf.position() + 28);
local_time_offset = in_buf.getShort();
TempBuf = new byte[16];
in_buf.get(TempBuf);
hardware_name_ingest = new String(TempBuf, "UTF-8");
TempBuf = new byte[16];
in_buf.get(TempBuf);
site_name_ingest = new String(TempBuf, "UTF-8");
minutes_recorded_west = in_buf.getShort();
lat_of_center = UtilityClass.UINT4_to_long(in_buf.getInt());
lon_of_center = UtilityClass.UINT4_to_long(in_buf.getInt());
ground_height = in_buf.getShort();
radar_height = in_buf.getShort();
PRF = in_buf.getInt();
pulse_width = in_buf.getInt();
dsp_type = UtilityClass.UINT2_to_SINT(in_buf.getShort());
trigger_rate_scheme = UtilityClass.UINT2_to_SINT(in_buf.getShort());
samples_used = in_buf.getShort();
TempBuf = new byte[12];
in_buf.get(TempBuf);
clutter_filter_file = new String(TempBuf, "UTF-8");
num_linear_filter = UtilityClass.UINT2_to_SINT(in_buf.getShort());
wavelength = in_buf.getInt();
truncation_height = in_buf.getInt();
range_first_bin = in_buf.getInt();
range_last_bin = in_buf.getInt();
num_output_bins = in_buf.getInt();
flag = UtilityClass.UINT2_to_SINT(in_buf.getShort());
ingest_files_used = in_buf.getShort();
polarization_type = UtilityClass.UINT2_to_SINT(in_buf.getShort());
io_cal_h = in_buf.getShort();
noise_cal_h = in_buf.getShort();
C_h = in_buf.getShort();
receiver_bandwidth = in_buf.getShort();
current_noise_h = in_buf.getShort();
in_buf.position(in_buf.position() + 28);
projection_info = UtilityClass.UINT4_to_long(in_buf.getInt());
standard_parallel_2 = UtilityClass.UINT4_to_long(in_buf.getInt());
equatorial_radius = UtilityClass.UINT4_to_long(in_buf.getInt());
flattening = UtilityClass.UINT4_to_long(in_buf.getInt());
fault_status = UtilityClass.UINT4_to_long(in_buf.getInt());
mask_input_sites = UtilityClass.UINT4_to_long(in_buf.getInt());
num_of_log_filters = UtilityClass.UINT2_to_SINT(in_buf.getShort());
cluttermap_applied = UtilityClass.UINT2_to_SINT(in_buf.getShort());
latitude_proj_ref = UtilityClass.UINT4_to_long(in_buf.getInt());
longitude_proj_ref = UtilityClass.UINT4_to_long(in_buf.getInt());
product_sequence_number = in_buf.getShort();
in_buf.position(in_buf.position() + 32);
melting_level = in_buf.getShort();
height_radar_above_ref = in_buf.getShort();
elements_in_product_array = in_buf.getShort();
TempByte = in_buf.get();
mean_wind_speed = TempByte;
TempByte = in_buf.get();
mean_wind_direction = TempByte;
in_buf.position(in_buf.position() + 2);
TempBuf = new byte[8];
in_buf.get(TempBuf);
tz_name_data = new String(TempBuf, "UTF-8");
in_buf.position(in_buf.position() + 8);
} catch (Exception e) {
System.err.println("Exception:" + e);
}
}
}