pro make_xrt_geometry, XRT_geometry, geometry, qabort, define=define, $
                       debug=debug
; =========================================================================
;+
; PROJECT:
;       Solar-B / XRT
;
; NAME:
;       MAKE_XRT_GEOMETRY
;
; CATEGORY:
;       Calibration
;
; PURPOSE:
;       Generate the XRT GEOMETRY structure.
;
; CALLING SEQUENCE:
;       MAKE_XRT_GEOMETRY, XRT_geometry, geometry, [,qabort] [,/define]
;
; INPUTS:
;       XRT_GEOMETRY: [Mandatory] Variable to return XRT_GEOMETRY structure
;           GEOMETRY: [Optional] geometry input structure from config file
;
; KEYWORDS:
;      /DEFINE: [Optional] when set returns only XRT_geometry structure
;                          definition.
;
; OUTPUTS:
;       XRT_GEOMETRY: (structure) Returns fully populated geometry structure,
;                                or geometry skeleton if called with /DEFINE.
;       QABORT: [Optional] program return status
;
; EXAMPLES:
;      make_xrt_geometry, XRT_geometry, /define
;      make_xrt_geometry, XRT_geometry, geometry, qabort
;
; COMMON BLOCKS:
;       None.
;
; NOTES:
;      Uses utility routine, timestamp.pro.
;
; MODIFICATION HISTORY:
;      progver = 'v2008.Sep.15' ; --- (Alisdair Davey/Mark Weber)
;                                     First debugged version.
       progver = 'v2008.Oct.01' ; --- (M.Weber) Reviewed version.
;
;-
; =========================================================================


   qabort = 0

   XRT_geometry = {      XRT_geometry_v0001,			$
                                   type: '',			$
			geo_str_version: '',			$
			  geo_str_descr: '',			$
	       	   	           name: '', 			$
    	        	      long_name: '', 			$
	 	                foc_len: double(0), 		$
       			  foc_len_units: '',			$
	     		  aperture_area: double(0), 		$
                    aperture_area_units: '', 			$
                             data_files: strarr(5), 		$
			        history: strarr(3),		$
		               comments: strarr(5)		$
		   }
   
   if keyword_set(define) then return

; Populate structure

   struct_assign, geometry, XRT_geometry, /nozero

   XRT_geometry.history[0] = 'MAKE_XRT_GEOMETRY '+progver+timestamp()
   XRT_geometry.geo_str_version = tag_names(XRT_geometry,/structure)
	    
end
