function varargout  = oxy_struct
% OXY_STRUCT - return an empty oxygen calibration struct with required fields
%
% AOML/PhOD CTDCalibration toolbox.
%
% USAGE:  cal = cal_struct
% 
% INPUT: NA
% 
% OUTPUT: sample: a structure containing the required fields for ctd calibration
% using the CTDCalib toolbox.
% 
% DESCRIPTION: The data sturcture used here follows the WOCE 
% Hydrographic Program naming conventions.
% 
% SEE ALSO: 
% 
% DEPENDENCIES: None
%
% EXAMPLES:
% >> oxy_cal = oxy_struct % returns the empty structure
% >> oxy_struct % displays the necessary fields at the terminal.
%

% AUTHORS: Derrick Snowden
%          NOAA/AOML/PhOD
%          Carlos Fonseca
%          UM/CIMAS
%         Wed May 12 16:31:39 EDT 2004
% 
%
% REFERENCES: WOCE Data Reporting Requirements (Rev. 2, Feb 1998)
% http://whpo.ucsd.edu/  http://woce.nodc.noaa.gov/
%
% 
% VERSION: 
%	$Revision: 1.4 $
%	$Date: 2008/02/18 19:40:23 $
%	$Id: oxy_struct.m,v 1.4 2008/02/18 19:40:23 duncombe Exp duncombe $
%
% CHANGELOG:
%


units = struct('cruiseid','None',...
'stnnbr','None', ...
'castnbr','None',...
'sampnbr','None',...
'btlnbr','None',...
'niskinbtlpos','None' ,...% AOML addition
'fireorder','None',...
'btloxy','ml/l',...
'ctdraw','dbar',...
'ctdprs','dbar',...
'ctdtemp1','degC',...% AOML/Carlos addition
'ctdtemp2','degC',...% AOML/Carlos addition
'ctdoxy1','ml/l',... % AOML/Carlos addition
'ctdoxy2','ml/l',... % AOML/Carlos addition
'ctdcon1','User defined',... % AOML/Carlos addition
'ctdcon2','User defined' );% AOML/Carlos addition

description = struct('cruiseid','Character array identifying cruise e.g. file naming etc.',...
'stnnbr','Station number', ...
'castnbr','Cast number if there are multiple casts per station',...
'sampnbr','Cell array with the alphanumeric label on the sample bottle',...
'btlnbr','Permanent unique serial number on the sample bottle',...
'niskinbtlpos','The position of the Niskin bottle on the rosette.',...% AOML addition
'fireorder','The order in which the bottle was fired.', ... ;% AOML addition
'btloxy','Bottle sample oxygen',...
'ctdraw','Optional: nominal ctd pressure recorded at bottle closure. Uncalibrated pressure.',...
'ctdprs','Pressure ',...
'ctdtmp1','Temperature in ITS-90 (Primary Sensor)',...% AOML/Carlos addition
'ctdtmp2','Temperature in ITS-90 (Secondary Sensor)',...% AOML/Carlos addition
'ctdoxy1','CTD Oxygen (Primary Sensor)',...% AOML/Carlos addition
'ctdoxy2','CTD Oxygen (Secondary Sensor)',...% AOML/Carlos addition
'ctdcon1','CTD Conductivity (Primary Sensor)',...% AOML/Carlos addition
'ctdcon2','CTD Conductivity (Secondary Sensor)' ); % AOML/Carlos addition

out = struct('cruiseid', [NaN], ...
'stnnbr', [NaN], ...
'castnbr', [NaN],...
'sampnbr',{NaN},...
'btlnbr', [NaN],...
'niskinbtlpos', [NaN],...% AOML addition
'fireorder', [NaN],...
'btloxy', [NaN],...
'ctdraw', [NaN],...
'ctdprs', [NaN],...
'ctdtmp1', [NaN],... % AOML/Carlos addition
'ctdtmp2', [NaN],... % AOML/Carlos addition
'ctdoxy1', [NaN],...% AOML/Carlos addition
'ctdoxy2', [NaN],...% AOML/Carlos addition
'ctdcon1', [NaN],...% AOML/Carlos addition
'ctdcon2', [NaN],...% AOML/Carlos addition
'units',units,...
'description',description) ;% AOML addition


if nargout ~= 1
	assignin('caller','ans',out)
	disp(out.description)
	return
else
	varargout{1} = out;
	return
end


