\hypertarget{gtvargetattr_8f90}{}\section{gtdata/gtvargetattr.f90 File Reference}
\label{gtvargetattr_8f90}\index{gtdata/gtvargetattr.\+f90@{gtdata/gtvargetattr.\+f90}}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine \hyperlink{gtvargetattr_8f90_ab50f3259967dd7454bbca496e3369c35}{gtvargetattri} (var, attrname, value, default)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a745df9542eaf06fedabdda7736fc0436}{gtvargetattrr} (var, attrname, value, default)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a18272f055384260f1b6e08b6473112b5}{gtvargetattrd} (var, attrname, value, default)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a08cbc943214df5219c71375a4f1cd933}{gtvargetattrip} (var, name, value)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a18926bfc70587fdf769db90c6422209b}{gtvargetattrrp} (var, name, value)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a57cf6755baee0ccf620db47d0e474f1c}{gtvargetattrdp} (var, name, value)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a196d9eee44621ab14e458163b5b0de86}{gtvargetattria} (var, name, value, default)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a0373381bc73db66f549cc9aef7e517bb}{gtvargetattrra} (var, name, value, default)
\item 
subroutine \hyperlink{gtvargetattr_8f90_a1f75783d40d54b2e81c99d27612bc382}{gtvargetattrda} (var, name, value, default)
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{gtvargetattr_8f90_a18272f055384260f1b6e08b6473112b5}\label{gtvargetattr_8f90_a18272f055384260f1b6e08b6473112b5}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrd@{gtvargetattrd}}
\index{gtvargetattrd@{gtvargetattrd}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrd()}{gtvargetattrd()}}
{\footnotesize\ttfamily subroutine gtvargetattrd (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{attrname,  }\item[{real(dp), intent(out)}]{value,  }\item[{real(dp), intent(in), optional}]{default }\end{DoxyParamCaption})}



Definition at line 133 of file gtvargetattr.\+f90.



References dc\+\_\+types\+::dp, dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
133   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
134   \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
135   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
136   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
137   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
138   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
139   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1stod}{stod}
140   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
141   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_ac74a34430fcd3d0eb2344f19d536c086}{dp}
142   \textcolor{keywordtype}{use }netcdf\textcolor{keywordtype}{, only}: nf90\_fill\_double
143   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
144   \textcolor{keywordtype}{implicit none}
145   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
146   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: attrname
147   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(out)}:: value
148   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}:: default
149   \textcolor{keywordtype}{integer}:: stat
150   \textcolor{keywordtype}{real(DP)}:: buffer(1)
151   \textcolor{keywordtype}{character(STRING)}:: cbuffer
152   \textcolor{keywordtype}{integer}:: \textcolor{keywordtype}{class}, cid
153   \textcolor{keywordtype}{logical}:: err
154 \textcolor{keywordflow}{continue}
155   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
156   \textcolor{keywordflow}{select case}(class)
157   \textcolor{keywordflow}{case} (vtb\_class\_netcdf)
158     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), attrname, \textcolor{keywordtype}{value}=buffer, &
159       & stat=stat, default=default)
160     \textcolor{keywordflow}{if} (stat >= 1) \textcolor{keywordflow}{then}
161       \textcolor{keywordtype}{value} = buffer(1)
162       \textcolor{keywordflow}{return}
163 \textcolor{keywordflow}{    end if}
164   \textcolor{keywordflow}{case} (vtb\_class\_memory)
165     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), attrname, cbuffer, err)
166     \textcolor{keywordflow}{if} (.not. err) \textcolor{keywordflow}{then}
167       \textcolor{keywordtype}{value} = \hyperlink{interfacedc__string_1_1stod}{stod}(cbuffer)
168       \textcolor{keywordflow}{return}
169 \textcolor{keywordflow}{    endif}
170 \textcolor{keywordflow}{  case default}
171     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrR"})
172 \textcolor{keywordflow}{  end select}
173   \textcolor{keywordtype}{value} = nf90\_fill\_double
174   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(default)) \textcolor{keywordtype}{value} = default
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a18272f055384260f1b6e08b6473112b5_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a1f75783d40d54b2e81c99d27612bc382}\label{gtvargetattr_8f90_a1f75783d40d54b2e81c99d27612bc382}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrda@{gtvargetattrda}}
\index{gtvargetattrda@{gtvargetattrda}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrda()}{gtvargetattrda()}}
{\footnotesize\ttfamily subroutine gtvargetattrda (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{real(dp), dimension(\+:), intent(out)}]{value,  }\item[{real(dp), intent(in)}]{default }\end{DoxyParamCaption})}



Definition at line 374 of file gtvargetattr.\+f90.



References dc\+\_\+types\+::dp, dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
374   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
375   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__generic}{gtdata\_generic}\textcolor{keywordtype}{, only}: friend => \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
376   \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
377   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
378   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
379   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_ac74a34430fcd3d0eb2344f19d536c086}{dp}
380   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
381   \textcolor{keywordtype}{implicit none}
382   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
383   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
384   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(out)}:: \textcolor{keywordtype}{value}(:)
385   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: default
386   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: ptr(:)
387   \textcolor{keywordtype}{integer}:: n, stat, \textcolor{keywordtype}{class}, cid
388 \textcolor{keywordflow}{continue}
389   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
390   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
391     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat, default)
392   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
393     \textcolor{keyword}{call }friend(var, name, ptr)
394     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{associated}(ptr)) \textcolor{keywordflow}{then}
395       value(:) = default
396     \textcolor{keywordflow}{else}
397       n = \hyperlink{interfacedc__date__generic_1_1min}{min}(\textcolor{keyword}{size}(ptr), \textcolor{keyword}{size}(\textcolor{keywordtype}{value}))
398       value(1:n) = ptr(1:n)
399       \textcolor{keywordflow}{if} (n < \textcolor{keyword}{size}(ptr)) value(n+1: ) = default
400       \textcolor{keyword}{deallocate}(ptr)
401 \textcolor{keywordflow}{    endif}
402   \textcolor{keywordflow}{else}
403     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrRA"})
404 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a1f75783d40d54b2e81c99d27612bc382_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a57cf6755baee0ccf620db47d0e474f1c}\label{gtvargetattr_8f90_a57cf6755baee0ccf620db47d0e474f1c}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrdp@{gtvargetattrdp}}
\index{gtvargetattrdp@{gtvargetattrdp}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrdp()}{gtvargetattrdp()}}
{\footnotesize\ttfamily subroutine gtvargetattrdp (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{real(dp), dimension(\+:), pointer}]{value }\end{DoxyParamCaption})}



Definition at line 263 of file gtvargetattr.\+f90.



References dc\+\_\+types\+::dp, dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
263   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
264   \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
265   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
266   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
267   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
268   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
269   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_ac74a34430fcd3d0eb2344f19d536c086}{dp}
270   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
271   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1get__array}{get\_array}
272   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
273   \textcolor{keywordtype}{implicit none}
274   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
275   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
276   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: \textcolor{keywordtype}{value}(:) \textcolor{comment}{!(out)}
277   \textcolor{keywordtype}{integer}:: stat, \textcolor{keywordtype}{class}, cid
278   \textcolor{keywordtype}{character(STRING)}:: cbuffer
279   \textcolor{keywordtype}{logical}:: err
280 \textcolor{keywordflow}{continue}
281   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
282   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
283     \textcolor{keyword}{allocate}(value(1))
284     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, value(1:0), stat)
285     \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
286     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keywordflow}{return}
287     \textcolor{keyword}{allocate}(value(stat))
288     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat)
289     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
290   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
291     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), name, cbuffer, err)
292     \textcolor{keywordflow}{if} (err) \textcolor{keywordflow}{then}
293       \textcolor{keyword}{nullify}(\textcolor{keywordtype}{value})
294       \textcolor{keywordflow}{return}
295 \textcolor{keywordflow}{    endif}
296     \textcolor{keyword}{call }\hyperlink{interfacedc__string_1_1get__array}{get\_array}(\textcolor{keywordtype}{value}, cbuffer)
297     cbuffer = \textcolor{stringliteral}{""}
298   \textcolor{keywordflow}{else}
299     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrRP"})
300 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a57cf6755baee0ccf620db47d0e474f1c_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_ab50f3259967dd7454bbca496e3369c35}\label{gtvargetattr_8f90_ab50f3259967dd7454bbca496e3369c35}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattri@{gtvargetattri}}
\index{gtvargetattri@{gtvargetattri}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattri()}{gtvargetattri()}}
{\footnotesize\ttfamily subroutine gtvargetattri (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{attrname,  }\item[{integer, intent(out)}]{value,  }\item[{integer, intent(in), optional}]{default }\end{DoxyParamCaption})}



Definition at line 19 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
19   \textcolor{comment}{!}
20   \textcolor{comment}{!== 属性の入力}
21   \textcolor{comment}{!}
22   \textcolor{comment}{! 変数 *var* に付加されている属性 *name* の値を返します。}
23   \textcolor{comment}{! *Get\_Attr* は複数のサブルーチンの総称名なので、}
24   \textcolor{comment}{! *value* には様々な型の変数 (ポインタも可能)}
25   \textcolor{comment}{! を与えることが可能です。}
26   \textcolor{comment}{! 以下のサブルーチンを参照してください。}
27   \textcolor{comment}{!}
28   \textcolor{comment}{! 属性の値が正常に取得できず、且つ *default* が与えられて}
29   \textcolor{comment}{! いた場合、その値が返ります。}
30   \textcolor{comment}{! *default* が与えられない場合のデフォルトの値はそれぞれ以下の}
31   \textcolor{comment}{! 通りです。}
32   \textcolor{comment}{!}
33   \textcolor{comment}{! character :: "" (空文字)}
34   \textcolor{comment}{! real      :: netcdf\_f77#NF90\_FILL\_REAL}
35   \textcolor{comment}{! real(DP)  :: netcdf\_f77#NF90\_FILL\_DOUBLE}
36   \textcolor{comment}{! integer   :: netcdf\_f77#NF90\_FILL\_INT}
37   \textcolor{comment}{!}
38   \textcolor{comment}{! *value* がポインタの場合は、型に依らず空状態が返ります。}
39   \textcolor{comment}{!}
40   \textcolor{comment}{! *value* にポインタを与えた場合、属性の値に応じて自動的に}
41   \textcolor{comment}{! 割り付けが行われます。そのため、必ず空状態にしてから与えてください。}
42   \textcolor{comment}{!}
43   \textcolor{comment}{! *value* に固定長配列を用意する場合 *default* が必須になりますが、}
44   \textcolor{comment}{! これは Fortran の言語仕様上ポインタ方式と引用仕様が同じであっては}
45   \textcolor{comment}{! ならないからです。}
46   \textcolor{comment}{!}
47   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
48   \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
49   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
50   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
51   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
52   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
53   \textcolor{keywordtype}{use }netcdf\textcolor{keywordtype}{, only}: nf90\_fill\_int
54   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1stoi}{stoi}
55   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
56   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
57   \textcolor{keywordtype}{implicit none}
58   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
59   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: attrname
60   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}:: value
61   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}:: default
62   \textcolor{keywordtype}{integer}:: stat, buffer(1), \textcolor{keywordtype}{class}, cid
63   \textcolor{keywordtype}{character(STRING)}:: cbuffer
64   \textcolor{keywordtype}{logical}:: err
65 \textcolor{keywordflow}{continue}
66   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
67   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
68     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), attrname, buffer, stat, default)
69     \textcolor{keywordflow}{if} (stat >= 1) \textcolor{keywordflow}{then}
70       \textcolor{keywordtype}{value} = buffer(1)
71       \textcolor{keywordflow}{return}
72 \textcolor{keywordflow}{    end if}
73   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
74     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), attrname, cbuffer, err)
75     \textcolor{keywordflow}{if} (.not. err) \textcolor{keywordflow}{then}
76       \textcolor{keywordtype}{value} = \hyperlink{interfacedc__string_1_1stoi}{stoi}(cbuffer)
77       \textcolor{keywordflow}{return}
78 \textcolor{keywordflow}{    endif}
79   \textcolor{keywordflow}{else}
80     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrI"})
81 \textcolor{keywordflow}{  endif}
82   \textcolor{keywordtype}{value} = nf90\_fill\_int
83   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(default)) \textcolor{keywordtype}{value} = default
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_ab50f3259967dd7454bbca496e3369c35_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a196d9eee44621ab14e458163b5b0de86}\label{gtvargetattr_8f90_a196d9eee44621ab14e458163b5b0de86}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattria@{gtvargetattria}}
\index{gtvargetattria@{gtvargetattria}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattria()}{gtvargetattria()}}
{\footnotesize\ttfamily subroutine gtvargetattria (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{integer, dimension(\+:), intent(out)}]{value,  }\item[{integer, intent(in)}]{default }\end{DoxyParamCaption})}



Definition at line 308 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
308   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
309   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__generic}{gtdata\_generic}\textcolor{keywordtype}{, only}: friend => \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
310   \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
311   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
312   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
313   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
314   \textcolor{keywordtype}{implicit none}
315   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
316   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
317   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}:: \textcolor{keywordtype}{value}(:)
318   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}:: default
319   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: ptr(:)
320   \textcolor{keywordtype}{integer}:: n, stat, \textcolor{keywordtype}{class}, cid
321 \textcolor{keywordflow}{continue}
322   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
323   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
324     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat, default)
325   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
326     \textcolor{keyword}{call }friend(var, name, ptr)
327     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{associated}(ptr)) \textcolor{keywordflow}{then}
328       value(:) = default
329     \textcolor{keywordflow}{else}
330       n = \hyperlink{interfacedc__date__generic_1_1min}{min}(\textcolor{keyword}{size}(ptr), \textcolor{keyword}{size}(\textcolor{keywordtype}{value}))
331       value(1:n) = ptr(1:n)
332       \textcolor{keywordflow}{if} (n < \textcolor{keyword}{size}(ptr)) value(n+1: ) = default
333       \textcolor{keyword}{deallocate}(ptr)
334 \textcolor{keywordflow}{    endif}
335   \textcolor{keywordflow}{else}
336     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrIA"})
337 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a196d9eee44621ab14e458163b5b0de86_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a08cbc943214df5219c71375a4f1cd933}\label{gtvargetattr_8f90_a08cbc943214df5219c71375a4f1cd933}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrip@{gtvargetattrip}}
\index{gtvargetattrip@{gtvargetattrip}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrip()}{gtvargetattrip()}}
{\footnotesize\ttfamily subroutine gtvargetattrip (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{integer, dimension(\+:), pointer}]{value }\end{DoxyParamCaption})}



Definition at line 182 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
182   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
183   \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
184   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
185   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
186   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
187   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
188   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
189   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1get__array}{get\_array}
190   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
191   \textcolor{keywordtype}{implicit none}
192   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
193   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
194   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: \textcolor{keywordtype}{value}(:) \textcolor{comment}{!(out)}
195   \textcolor{keywordtype}{integer}:: stat, \textcolor{keywordtype}{class}, cid
196   \textcolor{keywordtype}{character(STRING)}:: cbuffer
197   \textcolor{keywordtype}{logical}:: err
198 \textcolor{keywordflow}{continue}
199   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
200   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
201     \textcolor{keyword}{allocate}(value(1))
202     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, value(1:0), stat)
203     \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
204     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keywordflow}{return}
205     \textcolor{keyword}{allocate}(value(stat))
206     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat)
207     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
208   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
209     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), name, cbuffer, err)
210     \textcolor{keywordflow}{if} (err) \textcolor{keywordflow}{then}
211       \textcolor{keyword}{nullify}(\textcolor{keywordtype}{value})
212       \textcolor{keywordflow}{return}
213 \textcolor{keywordflow}{    endif}
214     \textcolor{keyword}{call }\hyperlink{interfacedc__string_1_1get__array}{get\_array}(\textcolor{keywordtype}{value}, cbuffer)
215     cbuffer = \textcolor{stringliteral}{""}
216   \textcolor{keywordflow}{else}
217     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrIP"})
218 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a08cbc943214df5219c71375a4f1cd933_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a745df9542eaf06fedabdda7736fc0436}\label{gtvargetattr_8f90_a745df9542eaf06fedabdda7736fc0436}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrr@{gtvargetattrr}}
\index{gtvargetattrr@{gtvargetattrr}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrr()}{gtvargetattrr()}}
{\footnotesize\ttfamily subroutine gtvargetattrr (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{attrname,  }\item[{real, intent(out)}]{value,  }\item[{real, intent(in), optional}]{default }\end{DoxyParamCaption})}



Definition at line 87 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+ebadvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
87   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
88   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
89   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
90   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
91   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
92   \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
93   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_a034d52028a635fe01d2ec4a960c5441c}{gt\_ebadvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
94   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1stod}{stod}
95   \textcolor{keywordtype}{use }netcdf\textcolor{keywordtype}{, only}: nf90\_fill\_float
96   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
97   \textcolor{keywordtype}{implicit none}
98   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
99   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: attrname
100   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(out)}:: value
101   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}:: default
102   \textcolor{keywordtype}{integer}:: stat
103   \textcolor{keywordtype}{real}:: buffer(1)
104   \textcolor{keywordtype}{character(STRING)}:: cbuffer
105   \textcolor{keywordtype}{integer}:: \textcolor{keywordtype}{class}, cid
106   \textcolor{keywordtype}{logical}:: err
107 \textcolor{keywordflow}{continue}
108   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
109   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
110     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), attrname, \textcolor{keywordtype}{value}=buffer, &
111       & stat=stat, default=default)
112     \textcolor{keywordflow}{if} (stat >= 1) \textcolor{keywordflow}{then}
113       \textcolor{keywordtype}{value} = buffer(1)
114       \textcolor{keywordflow}{return}
115 \textcolor{keywordflow}{    endif}
116   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
117     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), attrname, cbuffer, err)
118     \textcolor{keywordflow}{if} (.not. err) \textcolor{keywordflow}{then}
119       \textcolor{keywordtype}{value} = \hyperlink{interfacedc__string_1_1stod}{stod}(cbuffer)
120       \textcolor{keywordflow}{return}
121 \textcolor{keywordflow}{    endif}
122   \textcolor{keywordflow}{else}
123     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_a034d52028a635fe01d2ec4a960c5441c}{gt\_ebadvar}, \textcolor{stringliteral}{"GTVarGetAttrR"})
124 \textcolor{keywordflow}{  endif}
125   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(default)) \textcolor{keywordflow}{then}
126     \textcolor{keywordtype}{value} = default
127   \textcolor{keywordflow}{else}
128     \textcolor{keywordtype}{value} = nf90\_fill\_float
129 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a745df9542eaf06fedabdda7736fc0436_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a0373381bc73db66f549cc9aef7e517bb}\label{gtvargetattr_8f90_a0373381bc73db66f549cc9aef7e517bb}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrra@{gtvargetattrra}}
\index{gtvargetattrra@{gtvargetattrra}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrra()}{gtvargetattrra()}}
{\footnotesize\ttfamily subroutine gtvargetattrra (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{real, dimension(\+:), intent(out)}]{value,  }\item[{real, intent(in)}]{default }\end{DoxyParamCaption})}



Definition at line 341 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
341   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
342   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__generic}{gtdata\_generic}\textcolor{keywordtype}{, only}: friend => \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
343   \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
344   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
345   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
346   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
347   \textcolor{keywordtype}{implicit none}
348   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
349   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
350   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(out)}:: \textcolor{keywordtype}{value}(:)
351   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}:: default
352   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: ptr(:)
353   \textcolor{keywordtype}{integer}:: n, \textcolor{keywordtype}{class}, cid, stat
354 \textcolor{keywordflow}{continue}
355   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
356   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
357     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat, default)
358   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
359     \textcolor{keyword}{call }friend(var, name, ptr)
360     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{associated}(ptr)) \textcolor{keywordflow}{then}
361       value(:) = default
362     \textcolor{keywordflow}{else}
363       n = \hyperlink{interfacedc__date__generic_1_1min}{min}(\textcolor{keyword}{size}(ptr), \textcolor{keyword}{size}(\textcolor{keywordtype}{value}))
364       value(1:n) = ptr(1:n)
365       \textcolor{keywordflow}{if} (n < \textcolor{keyword}{size}(ptr)) value(n+1: ) = default
366       \textcolor{keyword}{deallocate}(ptr)
367 \textcolor{keywordflow}{    endif}
368   \textcolor{keywordflow}{else}
369     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrRA"})
370 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a0373381bc73db66f549cc9aef7e517bb_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gtvargetattr_8f90_a18926bfc70587fdf769db90c6422209b}\label{gtvargetattr_8f90_a18926bfc70587fdf769db90c6422209b}} 
\index{gtvargetattr.\+f90@{gtvargetattr.\+f90}!gtvargetattrrp@{gtvargetattrrp}}
\index{gtvargetattrrp@{gtvargetattrrp}!gtvargetattr.\+f90@{gtvargetattr.\+f90}}
\subsubsection{\texorpdfstring{gtvargetattrrp()}{gtvargetattrrp()}}
{\footnotesize\ttfamily subroutine gtvargetattrrp (\begin{DoxyParamCaption}\item[{type(gt\+\_\+variable), intent(in)}]{var,  }\item[{character(len = $\ast$), intent(in)}]{name,  }\item[{real, dimension(\+:), pointer}]{value }\end{DoxyParamCaption})}



Definition at line 222 of file gtvargetattr.\+f90.



References dc\+\_\+error\+::gt\+\_\+enotvar, dc\+\_\+error\+::storeerror(), dc\+\_\+types\+::string, and gtdata\+\_\+internal\+\_\+map\+::var\+\_\+class().


\begin{DoxyCode}
222   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__types}{gtdata\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}
223   \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
224   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__generic}{gtdata\_netcdf\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
225   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__netcdf__types}{gtdata\_netcdf\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}
226   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__generic}{gtdata\_memory\_generic}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}
227   \textcolor{keywordtype}{use }\hyperlink{namespacegtdata__memory__types}{gtdata\_memory\_types}\textcolor{keywordtype}{, only}: \hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}
228   \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1get__array}{get\_array}
229   \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}
230   \textcolor{keywordtype}{use }\hyperlink{namespacedc__types}{dc\_types}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__types_adb76910ff05e3b9fe3436567f8f8dac6}{string}
231   \textcolor{keywordtype}{implicit none}
232   \textcolor{keywordtype}{type}(\hyperlink{structgtdata__types_1_1gt__variable}{gt\_variable}), \textcolor{keywordtype}{intent(in)}:: var
233   \textcolor{keywordtype}{character(len = *)}, \textcolor{keywordtype}{intent(in)}:: name
234   \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: \textcolor{keywordtype}{value}(:) \textcolor{comment}{!(out)}
235   \textcolor{keywordtype}{integer}:: stat, \textcolor{keywordtype}{class}, cid
236   \textcolor{keywordtype}{character(STRING)}:: cbuffer
237   \textcolor{keywordtype}{logical}:: err
238 \textcolor{keywordflow}{continue}
239   \textcolor{keyword}{call }\hyperlink{namespacegtdata__internal__map_a86b920031832bea17e70a6bf4623c3d9}{var\_class}(var, \textcolor{keywordtype}{class}, cid)
240   \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_netcdf) \textcolor{keywordflow}{then}
241     \textcolor{keyword}{allocate}(value(1))
242     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, value(1:0), stat)
243     \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
244     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keywordflow}{return}
245     \textcolor{keyword}{allocate}(value(stat))
246     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__netcdf__types_1_1gd__nc__variable}{gd\_nc\_variable}(cid), name, \textcolor{keywordtype}{value}, stat)
247     \textcolor{keywordflow}{if} (stat < 1) \textcolor{keyword}{deallocate}(\textcolor{keywordtype}{value})
248   \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (\textcolor{keywordtype}{class} == vtb\_class\_memory) \textcolor{keywordflow}{then}
249     \textcolor{keyword}{call }\hyperlink{interfacegtdata__generic_1_1get__attr}{get\_attr}(\hyperlink{structgtdata__memory__types_1_1gd__mem__variable}{gd\_mem\_variable}(cid), name, cbuffer, err)
250     \textcolor{keywordflow}{if} (err) \textcolor{keywordflow}{then}
251       \textcolor{keyword}{nullify}(\textcolor{keywordtype}{value})
252       \textcolor{keywordflow}{return}
253 \textcolor{keywordflow}{    endif}
254     \textcolor{keyword}{call }\hyperlink{interfacedc__string_1_1get__array}{get\_array}(\textcolor{keywordtype}{value}, cbuffer)
255     cbuffer = \textcolor{stringliteral}{""}
256   \textcolor{keywordflow}{else}
257     \textcolor{keyword}{nullify}(\textcolor{keywordtype}{value})
258     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(\hyperlink{namespacedc__error_abf5d06cefc18fb371ac66ef70aadb05f}{gt\_enotvar}, \textcolor{stringliteral}{"GTVarGetAttrRP"})
259 \textcolor{keywordflow}{  endif}
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gtvargetattr_8f90_a18926bfc70587fdf769db90c6422209b_cgraph}
\end{center}
\end{figure}
