libsim  Versione6.3.0

◆ vol7d_dballe_init()

subroutine vol7d_dballe_class::vol7d_dballe_init ( type(vol7d_dballe), intent(out)  this,
character(len=*), intent(in), optional  dsn,
character(len=*), intent(in), optional  user,
character(len=*), intent(in), optional  password,
logical, intent(in), optional  write,
logical, intent(in), optional  wipe,
character(len=*), intent(in), optional  repinfo,
character(len=*), intent(inout), optional  filename,
character(len=*), intent(in), optional  format,
logical, intent(in), optional  file,
character(len=*), intent(in), optional  categoryappend,
integer, intent(in), optional  time_definition,
integer, intent(in), optional  idbhandle,
character(len=*), intent(in), optional  template 
)
private

inizializza l'oggetto

Parametri
[out]thisl'oggetto da inizializzare
[in]dsnper l'accesso al DSN ( default="test" )
[in]userper l'accesso al DSN ( default="test" )
[in]passwordper l'accesso al DSN ( default="" )
[in]writeabilita la scrittura sul DSN/file ( default=.false. )
[in]wipesvuota il DSN/file e/o lo prepara per una scrittura ( default=.false. )
[in]repinfoeventuale file repinfo.csv usato con wipe ( default="" )
[in,out]filenamenome dell'eventuale file da utilizzare in alternativa a dsn when file is true; se passato ="" ritorna un valore di deafult elaborato
[in]formatthe file format when file is true. It can be "BUFR" or "CREX". (default="BUFR")
[in]fileswitch to use file or data base ( default=.false )
[in]categoryappendappennde questo suffisso al namespace category di log4fortran
[in]time_definition0=time is reference time ; 1=time is validity time (default=1)
[in]idbhandledsn connection; if present it will be used
[in]templatespecificando category.subcategory.localcategory oppure un alias ("synop", "metar","temp","generic") forza l'exportazione ad uno specifico template BUFR/CREX" the special value "generic-frag is used to generate bufr on file where ana data is reported only once at beginning and data in other bufr after
[in]templatedefault template to use exporting to file; can be overwritten by export

Definizione alla linea 373 del file vol7d_dballe_class.F03.

373 if (present(var)) then
374  nvar=count(c_e(var))
375  if (nvar > 0) then
376  allocate (vars%dcv(nvar))
377  do i=1,size(var)
378  if (c_e(var(i)))then
379  if (present(varkind))then
380  select case (varkind(i))
381  case("r")
382  allocate (vars%dcv(i)%dat,source=dbadatar(var(i)))
383  case("i")
384  allocate (vars%dcv(i)%dat,source=dbadatai(var(i)))
385  case("b")
386  allocate (vars%dcv(i)%dat,source=dbadatab(var(i)))
387  case("d")
388  allocate (vars%dcv(i)%dat,source=dbadatad(var(i)))
389  case("c")
390  allocate (vars%dcv(i)%dat,source=dbadatac(var(i)))
391  case default
392  call l4f_category_log(this%category,l4f_error,"var and varkind mismach")
393  CALL raise_fatal_error()
394  end select
395  else
396  allocate (vars%dcv(i)%dat,source=dbadatac(var(i))) !char is default
397  end if
398  end if
399  end do
400  end if
401 end if
402 
403 if (present(anavar)) then
404  nanavar=count(c_e(anavar))
405  if (nanavar > 0) then
406  allocate (anavars%dcv(nanavar))
407  do i=1,size(anavar)
408  if (c_e(anavar(i)))then
409  if (present(anavarkind))then
410  select case (anavarkind(i))
411  case("r")
412  allocate (anavars%dcv(i)%dat,source=dbadatar(anavar(i)))
413  case("i")
414  allocate (anavars%dcv(i)%dat,source=dbadatai(anavar(i)))
415  case("b")
416  allocate (anavars%dcv(i)%dat,source=dbadatab(anavar(i)))
417  case("d")
418  allocate (anavars%dcv(i)%dat,source=dbadatad(anavar(i)))
419  case("c")
420  allocate (anavars%dcv(i)%dat,source=dbadatac(anavar(i)))
421  case default
422  call l4f_category_log(this%category,l4f_error,"anavar and anavarkind mismach")
423  CALL raise_fatal_error()
424  end select
425  else
426  allocate (anavars%dcv(i)%dat,source=dbadatac(anavar(i))) !char is default
427  end if
428  end if
429  end do
430  end if
431 end if
432 
433 if (present(attr)) then
434  nattr=size(attr)
435  if (nattr == 0) then
436  allocate (starvars%dcv(nattr))
437  else
438  nattr=count(c_e(attr))
439  if (nattr > 0) then
440  allocate (starvars%dcv(nattr))
441  do i=1,size(attr)
442  if (c_e(attr(i)))then
443  if (present(attrkind))then
444  select case (attrkind(i))
445  case("r")
446  allocate (starvars%dcv(i)%dat,source=dbadatar(attr(i)))
447  case("i")
448  allocate (starvars%dcv(i)%dat,source=dbadatai(attr(i)))
449  case("b")
450  allocate (starvars%dcv(i)%dat,source=dbadatab(attr(i)))
451  case("d")
452  allocate (starvars%dcv(i)%dat,source=dbadatad(attr(i)))
453  case("c")
454  allocate (starvars%dcv(i)%dat,source=dbadatac(attr(i)))
455  case default
456  call l4f_category_log(this%category,l4f_error,"attr and attrkind mismach")
457  CALL raise_fatal_error()

Generated with Doxygen.