Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
libhds is now a wrapper library that selects the v4 or v5 API based on the type of locator. The current implementation of the wrapper is mostly complete but lacks support for copying between different HDS versions and true support of cases where the API can not tell which version to use so must try both. hds_select.c has been modified from the automatically generated version so do not attempt to regenerate. HDS still has the Fortran wrapper library which links to libhds. Most of the changes in the Fortran code involve removal of low level HDS header files (e.g. rec.h and str.h) and switching to use SAE for good status rathder than the (historical) private value of DAT__OK. HDS now depends on ONE and SAE.
- Loading branch information
Showing
19 changed files
with
2,153 additions
and
247 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,4 @@ | ||
/DAT_PAR | ||
/dat_par.h | ||
/dat_par_f | ||
/dat_par_h | ||
/hds1_types.h | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
/* | ||
*+ | ||
* Name: | ||
* dat1.h | ||
* Purpose: | ||
* Private header file for HDS wrapper | ||
* Language: | ||
* Starlink ANSI C | ||
* Type of Module: | ||
* C Header File | ||
* Invocation: | ||
* #include "dat1.h" | ||
* Description: | ||
* Private header file for the HDS wrapper library. | ||
* Authors: | ||
* TIMJ: Tim Jenness (Cornell) | ||
* {enter_new_authors_here} | ||
* History: | ||
* 2014-10-28 (TIMJ): | ||
* Initial version | ||
* {enter_further_changes_here} | ||
* Copyright: | ||
* Copyright (C) 2014 Cornell University | ||
* All Rights Reserved. | ||
* Licence: | ||
* This program is free software; you can redistribute it and/or | ||
* modify it under the terms of the GNU General Public License as | ||
* published by the Free Software Foundation; either version 3 of | ||
* the License, or (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be | ||
* useful, but WITHOUT ANY WARRANTY; without even the implied | ||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR | ||
* PURPOSE. See the GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
* Bugs: | ||
* {note_any_bugs_here} | ||
*- | ||
*/ | ||
|
||
#if !defined( DAT_1_H_INCLUDED ) /* dat1.h already included? */ | ||
#define DAT_1_H_INCLUDED 1 | ||
|
||
#include "dat_par.h" | ||
|
||
/* Wrapper definition of an HDS locator struct. The first element */ | ||
/* must be present in both v4 and v5 implementations. */ | ||
/* We can not use an opaque struct internally but we can also not */ | ||
/* use a full definition of the struct. Just enough for the */ | ||
/* compiler to be able to know how to read the version. */ | ||
#define HDS_USE_INTERNAL_STRUCT 1 | ||
typedef struct LOC { int hds_version; } HDSLoc; | ||
|
||
HDSLoc * | ||
dat1_import_floc ( const char flocator[DAT__SZLOC], int loc_length, int * status); | ||
|
||
#endif | ||
|
Oops, something went wrong.