4 REAL,
PARAMETER :: grow_factor=1.5
6 INTEGER,
POINTER,
SAVE :: buffer_i(:)
7 INTEGER,
SAVE :: size_buffer_i = 0
10 REAL,
POINTER,
SAVE :: buffer_r(:)
11 INTEGER,
SAVE :: size_buffer_r = 0
14 LOGICAL,
POINTER,
SAVE :: buffer_l(:)
15 INTEGER,
SAVE :: size_buffer_l = 0
18 CHARACTER,
POINTER,
SAVE :: buffer_c(:)
19 INTEGER,
SAVE :: size_buffer_c = 0
32 INTEGER,
POINTER :: buff(:)
33 INTEGER,
INTENT(IN) :: buff_size
35 IF (buff_size>size_buffer_i)
THEN
37 size_buffer_i=max(2,int(size_buffer_i*grow_factor))
38 ALLOCATE(buffer_i(size_buffer_i))
46 REAL,
POINTER :: buff(:)
47 INTEGER,
INTENT(IN) :: buff_size
49 IF (buff_size>size_buffer_r)
THEN
51 size_buffer_r=max(2,int(size_buffer_r*grow_factor))
52 ALLOCATE(buffer_r(size_buffer_r))
60 LOGICAL,
POINTER :: buff(:)
61 INTEGER,
INTENT(IN) :: buff_size
63 IF (buff_size>size_buffer_l)
THEN
65 size_buffer_l=max(2,int(size_buffer_l*grow_factor))
66 ALLOCATE(buffer_l(size_buffer_l))
74 CHARACTER,
POINTER :: buff(:)
75 INTEGER,
INTENT(IN) :: buff_size
77 IF (buff_size>size_buffer_c)
THEN
79 size_buffer_c=max(2,int(size_buffer_c*grow_factor))
80 ALLOCATE(buffer_c(size_buffer_c))