\hypertarget{gtvarinquire_8f90}{}\section{gtdata/gtvarinquire.f90 File Reference}
\label{gtvarinquire_8f90}\index{gtdata/gtvarinquire.\+f90@{gtdata/gtvarinquire.\+f90}}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine \hyperlink{gtvarinquire_8f90_a65a7e0e03c02aee96d04ee4cb3ee0219}{gtvarinquire} (var, growable, rank, alldims, allcount, size, xtype, name, url, err)
\item 
integer function \hyperlink{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}{internal\+\_\+get\+\_\+alldims} (var)
\item 
integer function \hyperlink{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}{internal\+\_\+get\+\_\+allcount} (var)
\item 
integer function \hyperlink{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}{internal\+\_\+get\+\_\+size} (var)
\item 
integer function \hyperlink{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}{internal\+\_\+get\+\_\+rank} (var)
\item 
subroutine \hyperlink{gtvarinquire_8f90_ae6fabe57a15064d032648e3e7f5f924d}{gtvarinquire2} (var, allcount)
\item 
subroutine \hyperlink{gtvarinquire_8f90_afaa464119df1e9adf485f332e2b8b9b4}{gtvarinquirea} (var, attrname, xtype)
\item 
subroutine \hyperlink{gtvarinquire_8f90_a85fc850baf6d23ebcdda9df3699baf24}{gtvarinquired} (var, dimord, url, allcount, err)
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{gtvarinquire_8f90_a65a7e0e03c02aee96d04ee4cb3ee0219}\label{gtvarinquire_8f90_a65a7e0e03c02aee96d04ee4cb3ee0219}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!gtvarinquire@{gtvarinquire}}
\index{gtvarinquire@{gtvarinquire}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{gtvarinquire()}{gtvarinquire()}}
{\footnotesize\ttfamily subroutine gtvarinquire (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{logical, intent(out), optional}]{growable,  }\item[{integer, intent(out), optional}]{rank,  }\item[{integer, intent(out), optional}]{alldims,  }\item[{integer, intent(out), optional}]{allcount,  }\item[{integer, intent(out), optional}]{size,  }\item[{character(len=$\ast$), intent(out), optional}]{xtype,  }\item[{character(len=$\ast$), intent(out), optional}]{name,  }\item[{character(len=$\ast$), intent(out), optional}]{url,  }\item[{logical, intent(out), optional}]{err }\end{DoxyParamCaption})}



Definition at line 15 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::beginsub(), dc\+\_\+trace\+::dbgmessage(), dc\+\_\+trace\+::endsub(), internal\+\_\+get\+\_\+allcount(), internal\+\_\+get\+\_\+alldims(), internal\+\_\+get\+\_\+rank(), internal\+\_\+get\+\_\+size(), and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
15   \textcolor{comment}{!}
16   \textcolor{comment}{!== 変数に関する問い合わせ}
17   \textcolor{comment}{!}
18   \textcolor{comment}{! 変数 *var* に関する問い合わせを行います。}
19   \textcolor{comment}{!}
20   \textcolor{comment}{! 返り値となる引数の文字型の実引数の長さが足りないと、}
21   \textcolor{comment}{! 結果が損なわれます。引数の文字列の長さとして dc\_types#STRING}
22   \textcolor{comment}{! を用いることを推奨します。}
23   \textcolor{comment}{!}
24   \textcolor{comment}{! *Inquire* は複数のサブルーチンの総称名であり、}
25   \textcolor{comment}{! 問い合わせ方法は複数用意されています。}
26   \textcolor{comment}{! 下記のサブルーチンも参照してください。}
27   \textcolor{comment}{!}
28   \textcolor{comment}{! 他にも変数に関する問い合わせのための手続きとして}
29   \textcolor{comment}{! Get\_Slice, Dimname\_to\_Dimord があります。}
30   \textcolor{comment}{!}
31   \textcolor{comment}{!--}
32   \textcolor{comment}{! このサブルーチンは INQUIRE 文を模して作られたもので、}
33   \textcolor{comment}{! オブジェクト・変数・属性に関する問い合わせを行います。}
34   \textcolor{comment}{!++}
35   \textcolor{comment}{!}
36   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
37   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}, vtb\_class\_netcdf, vtb\_class\_memory
38   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1inquire}{inquire}
39   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
40   \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}, \hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}
41   \textcolor{keywordtype}{implicit none}
42   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
43   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: xtype
44                                         \textcolor{comment}{! 外部型の名前}
45   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: name
46                                         \textcolor{comment}{! name は変数名の最小の単位を返します。}
47                                         \textcolor{comment}{! ファイル名を含まないため}
48                                         \textcolor{comment}{! プログラム内での一意性は}
49                                         \textcolor{comment}{! 保証されません。}
50                                         \textcolor{comment}{! }
51   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: url
52                                         \textcolor{comment}{! url はファイル名のついた変数名}
53                                         \textcolor{comment}{! を返します。}
54                                         \textcolor{comment}{! プログラム内で一意です。}
55                                         \textcolor{comment}{! }
56   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: rank
57                                         \textcolor{comment}{! コンパクト(縮退)次元を数えない、}
58                                         \textcolor{comment}{! 次元の数}
59                                         \textcolor{comment}{! }
60   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: alldims
61                                         \textcolor{comment}{! 縮退次元を含む全次元数。}
62                                         \textcolor{comment}{! dimord には基本的にこちらを}
63                                         \textcolor{comment}{! 使います。}
64                                         \textcolor{comment}{! }
65   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: allcount
66                                         \textcolor{comment}{! 変数が次元変数である場合、}
67                                         \textcolor{comment}{! 総数を返します。}
68                                         \textcolor{comment}{! エラーの場合はゼロを返します。}
69                                         \textcolor{comment}{! }
70   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: size
71                                         \textcolor{comment}{! 変数の入出力領域の大きさ。}
72                                         \textcolor{comment}{! (変数が依存する各次元の長}
73                                         \textcolor{comment}{! [格子点数]の積)}
74                                         \textcolor{comment}{! }
75   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: growable
76                                         \textcolor{comment}{! 変数が次元変数である場合、}
77                                         \textcolor{comment}{! 自動拡張可能か否かを返します。}
78                                         \textcolor{comment}{! 次元変数でない場合は不定となります。}
79                                         \textcolor{comment}{! }
80   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: err
81                                         \textcolor{comment}{! 例外処理用フラグ.}
82                                         \textcolor{comment}{! デフォルトでは, この手続き内でエラーが}
83                                         \textcolor{comment}{! 生じた場合, プログラムは強制終了します.}
84                                         \textcolor{comment}{! 引数 *err* が与えられる場合,}
85                                         \textcolor{comment}{! プログラムは強制終了せず, 代わりに}
86                                         \textcolor{comment}{! *err* に .true. が代入されます.}
87                                         \textcolor{comment}{!}
88                                         \textcolor{comment}{! Exception handling flag. }
89                                         \textcolor{comment}{! By default, when error occur in }
90                                         \textcolor{comment}{! this procedure, the program aborts. }
91                                         \textcolor{comment}{! If this *err* argument is given, }
92                                         \textcolor{comment}{! .true. is substituted to *err* and }
93                                         \textcolor{comment}{! the program does not abort. }
94             \textcolor{keywordtype}{integer}:: \textcolor{keywordtype}{class}, cid
95 \textcolor{keywordflow}{continue}
96   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(\textcolor{stringliteral}{'gtvarinquire'}, \textcolor{stringliteral}{'var.mapid=%d'}, i=(/var%mapid/))
97   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
98   \textcolor{keywordflow}{select case}(class)
99   \textcolor{keywordflow}{case}(vtb\_class\_netcdf)
100     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(xtype) .or. \textcolor{keyword}{present}(name) .or. \textcolor{keyword}{present}(url)) \textcolor{keywordflow}{then}
101       \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), xtype=xtype, name=name, url=url)
102       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(xtype)) \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'xtype=%c'}, c1=trim(xtype))
103       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(name)) \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'name=%c'}, c1=trim(name))
104       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(url)) \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'url=%c'}, c1=trim(url))
105 \textcolor{keywordflow}{    endif}
106     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(growable)) \textcolor{keywordflow}{then}
107       \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), growable=growable)
108       \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'growable=%y'}, l=(/growable/))
109 \textcolor{keywordflow}{    endif}
110   \textcolor{keywordflow}{case}(vtb\_class\_memory)
111     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'vtb\_class\_memory not implemented: skipped'})
112 \textcolor{keywordflow}{  end select}
113   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(alldims)) alldims = \hyperlink{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}{internal\_get\_alldims}(var)
114   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(allcount)) allcount = \hyperlink{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}{internal\_get\_allcount}(var)
115   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(size)) \textcolor{keyword}{size} = \hyperlink{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}{internal\_get\_size}(var)
116   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(rank)) rank = \hyperlink{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}{internal\_get\_rank}(var)
117   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(\textcolor{stringliteral}{'gtvarinquire'})
118   \textcolor{keywordflow}{return}
119 \textcolor{keyword}{contains}
120 
121 \textcolor{keyword}{  integer }\textcolor{keyword}{function }\hyperlink{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}{internal\_get\_alldims}(var) \textcolor{keyword}{result}(result)
122     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
123     \textcolor{keywordtype}{implicit none}
124     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
125     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=result)
126     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'alldims=%d'}, i=(/result/))
127 \textcolor{keyword}{  end function }\hyperlink{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}{internal\_get\_alldims}
128 
129 \textcolor{keyword}{  integer }\textcolor{keyword}{function }\hyperlink{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}{internal\_get\_allcount}(var) \textcolor{keyword}{result}(result)
130     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
131     \textcolor{keywordtype}{implicit none}
132     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
133     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
134     \textcolor{keywordtype}{integer}:: nd
135     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
136     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
137       \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_allcount: no map'})
138       result = 1
139       \textcolor{keywordflow}{return}
140 \textcolor{keywordflow}{    endif}
141     \textcolor{keyword}{allocate}(map(nd))
142     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
143     result = product(map(1:nd)%allcount)
144     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_allcount: %d map.size=%d'}, &
145       & i=(/result, nd/))
146     \textcolor{keyword}{deallocate}(map)
147 \textcolor{keyword}{  end function }\hyperlink{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}{internal\_get\_allcount}
148 
149 \textcolor{keyword}{  integer }\textcolor{keyword}{function }\hyperlink{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}{internal\_get\_size}(var) \textcolor{keyword}{result}(result)
150     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
151     \textcolor{keywordtype}{implicit none}
152     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
153     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
154     \textcolor{keywordtype}{integer}:: nd
155     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
156     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
157       \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_size: no map'})
158       result = 1
159       \textcolor{keywordflow}{return}
160 \textcolor{keywordflow}{    endif}
161     \textcolor{keyword}{allocate}(map(nd))
162     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
163     result = product(map(1:nd)%count)
164     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_size: %d map.size=%d'}, &
165       & i=(/result, nd/))
166     \textcolor{keyword}{deallocate}(map)
167 \textcolor{keyword}{  end function }\hyperlink{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}{internal\_get\_size}
168 
169 \textcolor{keyword}{  integer }\textcolor{keyword}{function }\hyperlink{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}{internal\_get\_rank}(var) \textcolor{keyword}{result}(result)
170     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
171     \textcolor{keywordtype}{implicit none}
172     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
173     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
174     \textcolor{keywordtype}{integer}:: nd
175 
176     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
177     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
178       \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_rank: no map'})
179       result = 0
180       \textcolor{keywordflow}{return}
181 \textcolor{keywordflow}{    endif}
182     \textcolor{keyword}{allocate}(map(nd))
183     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
184     result = count(map(1:nd)%count > 1)
185     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}(\textcolor{stringliteral}{'internal\_get\_rank: %d'}, i=(/result/))
186     \textcolor{keyword}{deallocate}(map)
187 \textcolor{keyword}{  end function }\hyperlink{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}{internal\_get\_rank}
188 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvarinquire_8f90_a65a7e0e03c02aee96d04ee4cb3ee0219_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_ae6fabe57a15064d032648e3e7f5f924d}\label{gtvarinquire_8f90_ae6fabe57a15064d032648e3e7f5f924d}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!gtvarinquire2@{gtvarinquire2}}
\index{gtvarinquire2@{gtvarinquire2}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{gtvarinquire2()}{gtvarinquire2()}}
{\footnotesize\ttfamily subroutine gtvarinquire2 (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{integer, dimension(\+:), intent(out)}]{allcount }\end{DoxyParamCaption})}



Definition at line 192 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::beginsub(), and dc\+\_\+trace\+::endsub().


\begin{DoxyCode}
192   \textcolor{comment}{!}
193   \textcolor{comment}{!== 変数の依存する次元 (複数) の総数の問い合わせ}
194   \textcolor{comment}{!}
195   \textcolor{comment}{! 変数 *var* が依存する各次元の総数を返します。}
196   \textcolor{comment}{! *allcount* の配列のサイズは依存する次元の数だけ必要です。}
197   \textcolor{comment}{! 依存する次元の数は上記の *Inquire* の *alldims* で調べることが}
198   \textcolor{comment}{! できます。}
199   \textcolor{comment}{!}
200   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
201   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__generic}{gtdata\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1inquire}{inquire}, \hyperlink{interfacegtdata__generic_1_1open}{open}, \hyperlink{interfacegtdata__generic_1_1close}{close}
202   \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}
203   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
204   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}:: allcount(:) \textcolor{comment}{! alldims 個必要}
205   \textcolor{keywordtype}{integer}:: i, n
206   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}):: v
207   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(\textcolor{stringliteral}{'gtvarinquire2'})
208   \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(var, alldims=n)
209   \textcolor{keywordflow}{do}, i = 1, n
210     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1open}{open}(v, var, i, count\_compact=.true.)
211     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(var, allcount=allcount(i))
212     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1close}{close}(v)
213 \textcolor{keywordflow}{  enddo}
214   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(\textcolor{stringliteral}{'gtvarinquire2'})
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvarinquire_8f90_ae6fabe57a15064d032648e3e7f5f924d_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_afaa464119df1e9adf485f332e2b8b9b4}\label{gtvarinquire_8f90_afaa464119df1e9adf485f332e2b8b9b4}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!gtvarinquirea@{gtvarinquirea}}
\index{gtvarinquirea@{gtvarinquirea}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{gtvarinquirea()}{gtvarinquirea()}}
{\footnotesize\ttfamily subroutine gtvarinquirea (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len=$\ast$), intent(in)}]{attrname,  }\item[{character(len=$\ast$), intent(out), optional}]{xtype }\end{DoxyParamCaption})}



Definition at line 218 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::beginsub(), dc\+\_\+trace\+::endsub(), and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
218   \textcolor{comment}{!}
219   \textcolor{comment}{!== 変数の属性の型の問い合わせ}
220   \textcolor{comment}{!}
221   \textcolor{comment}{! 変数 *var* の属性 *attrname* の値の型を *xtype* に返します。}
222   \textcolor{comment}{!}
223   \textcolor{comment}{!--}
224   \textcolor{comment}{! 文字数が合わなければ当然変なことが起こるが、気にしない。}
225   \textcolor{comment}{!++}
226   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
227   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}, vtb\_class\_netcdf, vtb\_class\_memory
228   \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}
229   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1inquire}{inquire}
230   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
231   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
232   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(in)}:: attrname
233   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: xtype
234   \textcolor{keywordtype}{integer}:: \textcolor{keywordtype}{class}, cid
235   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{parameter}:: subnam = \textcolor{stringliteral}{"gtvarinquireA"}
236 \textcolor{keywordflow}{continue}
237   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(subnam, \textcolor{stringliteral}{"%c"}, c1=trim(attrname))
238   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
239   \textcolor{keywordflow}{select case}(class)
240   \textcolor{keywordflow}{case}(vtb\_class\_netcdf)
241     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), attrname=attrname, xtype=xtype)
242 \textcolor{keywordflow}{  end select}
243   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(subnam)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvarinquire_8f90_afaa464119df1e9adf485f332e2b8b9b4_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_a85fc850baf6d23ebcdda9df3699baf24}\label{gtvarinquire_8f90_a85fc850baf6d23ebcdda9df3699baf24}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!gtvarinquired@{gtvarinquired}}
\index{gtvarinquired@{gtvarinquired}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{gtvarinquired()}{gtvarinquired()}}
{\footnotesize\ttfamily subroutine gtvarinquired (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{integer, intent(in)}]{dimord,  }\item[{character(len=$\ast$), intent(out), optional}]{url,  }\item[{integer, intent(out), optional}]{allcount,  }\item[{logical, intent(out), optional}]{err }\end{DoxyParamCaption})}



Definition at line 247 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::beginsub(), and dc\+\_\+trace\+::endsub().


\begin{DoxyCode}
247   \textcolor{comment}{!}
248   \textcolor{comment}{!== 変数の次元に関する問い合わせ}
249   \textcolor{comment}{!}
250   \textcolor{comment}{! 変数 *var* の次元順序番号 *dimord* に対応する次元の}
251   \textcolor{comment}{! URL *url* と総数 *allcout* を返します。}
252   \textcolor{comment}{! }
253   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
254   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__generic}{gtdata\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1open}{open}, \hyperlink{interfacegtdata__generic_1_1close}{close}, \hyperlink{interfacegtdata__generic_1_1inquire}{inquire}
255   \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}
256   \textcolor{keywordtype}{implicit none}
257   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
258   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}:: dimord
259   \textcolor{keywordtype}{character(len=*)}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: url
260   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: allcount
261   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(out)}, \textcolor{keywordtype}{optional}:: err
262   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}):: dimvar
263   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{parameter}:: subnam = \textcolor{stringliteral}{"gtvarinquireD"}
264 \textcolor{keywordflow}{continue}
265   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(subnam, \textcolor{stringliteral}{"%d"}, i=(/dimord/))
266   \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1open}{open}(dimvar, source\_var=var, dimord=dimord, err=err)
267   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(url)) \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(dimvar, url=url)
268   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(allcount)) \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1inquire}{inquire}(dimvar, allcount=allcount)
269   \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1close}{close}(dimvar)
270   \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(subnam)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvarinquire_8f90_a85fc850baf6d23ebcdda9df3699baf24_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}\label{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!internal\+\_\+get\+\_\+allcount@{internal\+\_\+get\+\_\+allcount}}
\index{internal\+\_\+get\+\_\+allcount@{internal\+\_\+get\+\_\+allcount}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{internal\+\_\+get\+\_\+allcount()}{internal\_get\_allcount()}}
{\footnotesize\ttfamily integer function gtvarinquire\+::internal\+\_\+get\+\_\+allcount (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var }\end{DoxyParamCaption})}



Definition at line 130 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::dbgmessage(), and gtdata\+\_\+internal\+\_\+map\+::map\+\_\+lookup().



Referenced by gtvarinquire().


\begin{DoxyCode}
130     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
131     \textcolor{keywordtype}{implicit none}
132     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
133     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
134     \textcolor{keywordtype}{integer}:: nd
135     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
136     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
137       \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_allcount: no map'})
138       result = 1
139       \textcolor{keywordflow}{return}
140 \textcolor{keywordflow}{    endif}
141     \textcolor{keyword}{allocate}(map(nd))
142     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
143     result = product(map(1:nd)%allcount)
144     \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_allcount: %d map.size=%d'}, &
145       & i=(/result, nd/))
146     \textcolor{keyword}{deallocate}(map)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=338pt]{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=289pt]{gtvarinquire_8f90_a74a690bd0ab9e94ab7334260a30031e1_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}\label{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!internal\+\_\+get\+\_\+alldims@{internal\+\_\+get\+\_\+alldims}}
\index{internal\+\_\+get\+\_\+alldims@{internal\+\_\+get\+\_\+alldims}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{internal\+\_\+get\+\_\+alldims()}{internal\_get\_alldims()}}
{\footnotesize\ttfamily integer function gtvarinquire\+::internal\+\_\+get\+\_\+alldims (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var }\end{DoxyParamCaption})}



Definition at line 122 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::dbgmessage(), and gtdata\+\_\+internal\+\_\+map\+::map\+\_\+lookup().



Referenced by gtvarinquire().


\begin{DoxyCode}
122     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
123     \textcolor{keywordtype}{implicit none}
124     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
125     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=result)
126     \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'alldims=%d'}, i=(/result/))
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=335pt]{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=286pt]{gtvarinquire_8f90_a07c07408c34135855bbd660fda8bb354_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}\label{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!internal\+\_\+get\+\_\+rank@{internal\+\_\+get\+\_\+rank}}
\index{internal\+\_\+get\+\_\+rank@{internal\+\_\+get\+\_\+rank}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{internal\+\_\+get\+\_\+rank()}{internal\_get\_rank()}}
{\footnotesize\ttfamily integer function gtvarinquire\+::internal\+\_\+get\+\_\+rank (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var }\end{DoxyParamCaption})}



Definition at line 170 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::dbgmessage(), and gtdata\+\_\+internal\+\_\+map\+::map\+\_\+lookup().



Referenced by gtvarinquire().


\begin{DoxyCode}
170     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
171     \textcolor{keywordtype}{implicit none}
172     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
173     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
174     \textcolor{keywordtype}{integer}:: nd
175 
176     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
177     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
178       \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_rank: no map'})
179       result = 0
180       \textcolor{keywordflow}{return}
181 \textcolor{keywordflow}{    endif}
182     \textcolor{keyword}{allocate}(map(nd))
183     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
184     result = count(map(1:nd)%count > 1)
185     \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_rank: %d'}, i=(/result/))
186     \textcolor{keyword}{deallocate}(map)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=323pt]{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=274pt]{gtvarinquire_8f90_a665c8d42b9f43725d3fcbe485b87af35_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}\label{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880}} 
\index{gtvarinquire.\+f90@{gtvarinquire.\+f90}!internal\+\_\+get\+\_\+size@{internal\+\_\+get\+\_\+size}}
\index{internal\+\_\+get\+\_\+size@{internal\+\_\+get\+\_\+size}!gtvarinquire.\+f90@{gtvarinquire.\+f90}}
\subsubsection{\texorpdfstring{internal\+\_\+get\+\_\+size()}{internal\_get\_size()}}
{\footnotesize\ttfamily integer function gtvarinquire\+::internal\+\_\+get\+\_\+size (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var }\end{DoxyParamCaption})}



Definition at line 150 of file gtvarinquire.\+f90.



References dc\+\_\+trace\+::dbgmessage(), and gtdata\+\_\+internal\+\_\+map\+::map\+\_\+lookup().



Referenced by gtvarinquire().


\begin{DoxyCode}
150     \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__internal__map}{gtdata\_internal\_map}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}, 
      \hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}
151     \textcolor{keywordtype}{implicit none}
152     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
153     \textcolor{keywordtype}{type}(\hyperlink{structgtdata__internal__map_1_1gt__dimmap}{gt\_dimmap}), \textcolor{keywordtype}{allocatable}:: map(:)
154     \textcolor{keywordtype}{integer}:: nd
155     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, ndims=nd)
156     \textcolor{keywordflow}{if} (nd <= 0) \textcolor{keywordflow}{then}
157       \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_size: no map'})
158       result = 1
159       \textcolor{keywordflow}{return}
160 \textcolor{keywordflow}{    endif}
161     \textcolor{keyword}{allocate}(map(nd))
162     \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a076911f777be03f10a2c024dac7efdad}{map\_lookup}(var, map=map)
163     result = product(map(1:nd)%count)
164     \textcolor{keyword}{call }dbgmessage(\textcolor{stringliteral}{'internal\_get\_size: %d map.size=%d'}, &
165       & i=(/result, nd/))
166     \textcolor{keyword}{deallocate}(map)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=322pt]{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=273pt]{gtvarinquire_8f90_a73fb6be0887a6c817ace745c8075f880_icgraph}
\end{center}
\end{figure}
