102
102
 
            bind(C,name="PIOc_iam_iotask")
103
103
 
         use iso_c_binding
104
104
 
         integer(C_INT), intent(in), value :: iosysid
105
105
 
         logical(C_BOOL), intent(out) :: iotask
106
106
 
       end function PIOc_iam_iotask
107
107
 
    end interface
108
108
 
    
109
109
 
    ierr = PIOc_iam_iotask(iosystem%iosysid, ctask)
110
110
 
    task = ctask
111
111
 
  end function pio_iam_iotask
 
112
+
  
 
113
+
!>
 
114
+
!! @public
 
115
+
!! @brief Integer function returns rank of IO task.
 
116
+
!<
112
117
 
  function pio_iotask_rank(iosystem) result(rank)
113
118
 
    type(iosystem_desc_t), intent(in) :: iosystem
114
119
 
    integer :: rank, ierr
115
120
 
    interface
116
121
 
       integer(C_INT) function PIOc_iotask_rank(iosysid, rank) &
117
122
 
            bind(C,name="PIOc_iotask_rank")
118
123
 
         use iso_c_binding
119
124
 
         integer(C_INT), intent(in), value :: iosysid
120
125
 
         integer(C_INT), intent(out) :: rank
121
126
 
       end function PIOc_iotask_rank
122
127
 
    end interface
123
128
 
    
124
129
 
    ierr = PIOc_iotask_rank(iosystem%iosysid, rank)
125
130
 
  end function pio_iotask_rank
126
131
 
 
132
+
!>
 
133
+
!! @public
 
134
+
!! @brief Sets active to true if IO system is active.
 
135
+
!<
127
136
 
  subroutine pio_iosystem_is_active(iosystem, active)
128
137
 
    use iso_c_binding
129
138
 
    type(iosystem_desc_t), intent(in) :: iosystem
130
139
 
    logical, intent(out) :: active
131
140
 
    logical(C_BOOL) :: lactive
132
141
 
    integer :: ierr
133
142
 
    interface
134
143
 
       integer(C_INT) function PIOc_iosystem_is_active(iosysid, active) &
135
144
 
            bind(C,name="PIOc_iosystem_is_active")
136
145
 
         use iso_c_binding
137
146
 
         integer(C_INT), intent(in), value :: iosysid
138
147
 
         logical(C_BOOL), intent(out) :: active
139
148
 
       end function PIOc_iosystem_is_active
140
149
 
    end interface
141
150
 
142
151
 
    ierr = PIOc_iosystem_is_active(iosystem%iosysid, lactive)
143
152
 
    active = lactive
144
 
-
145
 
-
146
153
 
  end subroutine pio_iosystem_is_active
147
154
 
148
155
 
149
156
 
end module pio
150
157