Ignore:
Timestamp:
10/30/09 16:29:39 (15 years ago)
Author:
ymipsl
Message:

Correction bug sur les ids des file_group
+ possibilité de fixer les attributs des groupes à partir de l'ioserver

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XMLIO_SERVER/trunk/src/XMLIO/mod_field_group.f90

    r29 r42  
    1919  TYPE(sorted_list),POINTER,SAVE,PRIVATE     :: Ids  
    2020 
     21  INTERFACE field_group__set_attribut 
     22    MODULE PROCEDURE field_group__set_attribut_id,field_group__set_attribut_pt 
     23  END INTERFACE 
     24 
    2125CONTAINS 
    2226 
     
    5963     
    6064  END SUBROUTINE field_group__get 
    61      
     65 
     66  SUBROUTINE field_group__set_attribut_id(id,attrib,Ok) 
     67  USE mod_attribut 
     68  USE error_msg 
     69  IMPLICIT NONE 
     70    CHARACTER(LEN=*),INTENT(IN) :: id 
     71    TYPE(attribut),INTENT(IN) :: attrib 
     72    LOGICAL,OPTIONAL,INTENT(out)  :: Ok 
     73     
     74    TYPE(field_group),POINTER             :: Pt_fg 
     75    INTEGER                         :: Pos 
     76    LOGICAL                         :: success 
     77     
     78    CALL sorted_list__find(Ids,hash(Id),Pos,success) 
     79    IF (success) THEN 
     80      Pt_fg=>field_group_ids%at(Pos)%Pt 
     81      CALL field_group__set_attribut(Pt_fg,attrib) 
     82      IF (PRESENT(OK)) ok=.TRUE. 
     83    ELSE 
     84      IF (.NOT.PRESENT(OK)) THEN 
     85        WRITE(message,*) 'Field group id :',id,'is undefined' 
     86        CALL error('mod_field_group::field_group__set_attribut') 
     87      ELSE 
     88        OK=.FALSE. 
     89      ENDIF 
     90    ENDIF  
     91     
     92  END SUBROUTINE field_group__set_attribut_id 
     93   
     94  SUBROUTINE field_group__set_attribut_pt(pt_fg,attrib) 
     95  USE mod_attribut 
     96  USE mod_object 
     97  IMPLICIT NONE 
     98    TYPE(field_group),POINTER :: Pt_fg 
     99    TYPE(attribut),INTENT(IN) :: attrib 
     100      
     101    IF (attrib%object==field_object) THEN 
     102      CALL field__set_attribut(Pt_fg%default_attribut,attrib) 
     103    ENDIF 
     104     
     105  END SUBROUTINE field_group__set_attribut_pt 
     106     
     107       
    62108  RECURSIVE SUBROUTINE field_group__new(Pt_fg,Id) 
    63109  USE string_function 
Note: See TracChangeset for help on using the changeset viewer.