SURFEX v8.1
General documentation of Surfex
lfi_miss.c
Go to the documentation of this file.
1 /**** *lfi_miss.c* - Definition of \`missing' LFI routines; these routines print a message and abort
2  *
3  * Author.
4  * -------
5  * Philippe Marguinaud *METEO-FRANCE*
6  * Original : 12-08-2013
7  *
8  */
9 
10 
11 #include <stdio.h>
12 #include "lfi_miss.h"
13 #include "lfi_abor.h"
14 
15 typedef struct magic_t
16 {
17  char cmagic[8];
18 }
19 magic_t;
20 
21 /* We define helper functions and macros here */
22 
23 static void not_implemented (void * LFI, const char * name)
24 {
25  magic_t * m = LFI;
26  lfi_abor ("`%s' is not implemented by `%8.8s'", name, m->cmagic);
27 }
28 
29 #define lfi_miss(lfixxx, LFIXXX) \
30 void lfixxx##_miss (LFIXXX##_ARGS_DECL) \
31 { \
32  not_implemented (LFI, #lfixxx); \
33 }
34 
35 lfi_miss (lfiouv, LFIOUV)
36 lfi_miss (lficas, LFICAS)
37 lfi_miss (lfiecr, LFIECR)
38 lfi_miss (lfifer, LFIFER)
39 lfi_miss (lfilec, LFILEC)
40 lfi_miss (lfinfo, LFINFO)
41 lfi_miss (lfipos, LFIPOS)
42 lfi_miss (lfiver, LFIVER)
43 lfi_miss (lfiofm, LFIOFM)
44 lfi_miss (lfineg, LFINEG)
45 lfi_miss (lfilaf, LFILAF)
46 lfi_miss (lfiosg, LFIOSG)
47 lfi_miss (lfinum, LFINUM)
48 lfi_miss (lfisup, LFISUP)
49 lfi_miss (lfiopt, LFIOPT)
50 lfi_miss (lfinmg, LFINMG)
51 lfi_miss (lficap, LFICAP)
52 lfi_miss (lfifra, LFIFRA)
53 lfi_miss (lficfg, LFICFG)
54 lfi_miss (lfierf, LFIERF)
55 lfi_miss (lfilas, LFILAS)
56 lfi_miss (lfiren, LFIREN)
57 lfi_miss (lfiini, LFIINI)
58 lfi_miss (lfipxf, LFIPXF)
59 lfi_miss (lfioeg, LFIOEG)
60 lfi_miss (lfinaf, LFINAF)
61 lfi_miss (lfiofd, LFIOFD)
62 lfi_miss (lfiomf, LFIOMF)
63 lfi_miss (lfiafm, LFIAFM)
64 lfi_miss (lfista, LFISTA)
65 lfi_miss (lfiosf, LFIOSF)
66 lfi_miss (lfilap, LFILAP)
67 lfi_miss (lfioef, LFIOEF)
68 lfi_miss (lfimst, LFIMST)
69 lfi_miss (lfinim, LFINIM)
70 lfi_miss (lfisfm, LFISFM)
71 lfi_miss (lfinsg, LFINSG)
72 lfi_miss (lfideb, LFIDEB)
73 lfi_miss (lfiomg, LFIOMG)
74 lfi_miss (lfifmd, LFIFMD)
subroutine lfiosf(KREP, KNUMER, LDIMST)
Definition: lfiosf.F90:106
subroutine lfiofd(KFACMD)
Definition: lfiofd.F90:79
subroutine lfipxf(KREP, KNUMER, KNUMEX, CDCFGX, KLAREX, KXCNEX, KFACEX, KNUTRA, CDNOMA, KLONG)
Definition: lfipxf.F90:509
subroutine lfiren(KREP, KNUMER, CDNOM1, CDNOM2)
Definition: lfiren.F90:334
subroutine lfilap(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfilap.F90:290
subroutine lfista(KREP, KNUMER)
Definition: lfista.F90:120
subroutine lfideb(LDEBUG)
Definition: lfideb.F90:78
subroutine lfifer(KREP, KNUMER, CDSTTC)
Definition: lfifer.F90:1180
subroutine lficas(KREP, KNUMER, CDNOMA, KLONG, KPOSEX, LDAVAN)
Definition: lficas.F90:252
subroutine lfifmd(KFACMD)
Definition: lfifmd.F90:138
subroutine lfiecr(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfiecr.F90:524
subroutine lfinaf(KREP, KNUMER, KNALDO, KNTROU, KNARES, KNAMAX)
Definition: lfinaf.F90:146
subroutine lfierf(KREP, KNUMER, LDERFA)
Definition: lfierf.F90:99
quick &counting sorts only inumt inumt name
subroutine lfiomg(KNIVAU, KULOUT)
Definition: lfiomg.F90:90
subroutine lfisfm(KREP, KNUMER)
Definition: lfisfm.F90:189
subroutine lfinsg(KNIVAU)
Definition: lfinsg.F90:116
subroutine lfiafm(KREP, KNUMER, KFACTM)
Definition: lfiafm.F90:220
subroutine lfiomf(KREP, KNUMER, KNIMES)
Definition: lfiomf.F90:99
subroutine lfioeg(KNIVAU)
Definition: lfioeg.F90:89
subroutine lfilas(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfilas.F90:290
subroutine lfimst(KREP, KNUMER, LDIMST)
Definition: lfimst.F90:103
subroutine lfifra(LDFRAN)
Definition: lfifra.F90:90
subroutine lfipos(KREP, KNUMER)
Definition: lfipos.F90:122
subroutine lfisup(KREP, KNUMER, CDNOMA, KLONUT)
Definition: lfisup.F90:389
void lfi_abor(const char *fmt,...)
Definition: lfi_abor.c:21
subroutine lfinim(KREP, KNUMER, KNIMES)
Definition: lfinim.F90:102
subroutine lfiopt(KREP, KNUMER, LDNOMM, CDNOMF, CDSTTO, LDERFA, LDIMST, KNIMES)
Definition: lfiopt.F90:104
struct magic_t magic_t
static void not_implemented(void *LFI, const char *name)
Definition: lfi_miss.c:23
subroutine lfinmg(KNIVAU, KULOUT)
Definition: lfinmg.F90:133
subroutine lfiini(KOPTIO)
Definition: lfiini.F90:260
subroutine lficfg()
Definition: lficfg.F90:275
subroutine lfinfo(KREP, KNUMER, CDNOMA, KLONG, KPOSEX)
Definition: lfinfo.F90:254
subroutine lfineg(KNIVAU)
Definition: lfineg.F90:115
subroutine lfiouv(KREP, KNUMER, LDNOMM, CDNOMF, CDSTTO, LDERFA, LDIMST, KNIMES, KNBARP, KNBARI)
Definition: lfiouv.F90:1226
subroutine lfioef(KREP, KNUMER, LDERFA)
Definition: lfioef.F90:101
subroutine lfiver(PVEROU, CDSENS)
Definition: lfiver.F90:73
subroutine lfilec(KREP, KNUMER, CDNOMA, KTAB, KLONG)
Definition: lfilec.F90:292
subroutine lfinum(KNUMER, KRANG)
Definition: lfinum.F90:105
subroutine lfilaf(KREP, KNUMER, LDTOUT)
Definition: lfilaf.F90:623
subroutine lficap(KREP, KNUMER, CDNOMA, KLONG, KPOSEX, LDRECU)
Definition: lficap.F90:251
subroutine lfiosg(KNIVAU)
Definition: lfiosg.F90:86
subroutine lfiofm(KREP, KNUMER, KFACTM, LDOUVR)
Definition: lfiofm.F90:161