33
34
35
36#include "implicit_f.inc"
37
38
39
40#define T_FORMATED 1
41
42#define T_DIRECT_120 2
43
44
45
46#include "task_c.inc"
47
48
49
50 INTEGER, INTENT(IN) :: FD
51 INTEGER, INTENT(IN) :: LENROOTN
52 CHARACTER(LEN=LENROOTN),INTENT(IN) :: ROOTN
53 CHARACTER(LEN=10192),INTENT(OUT) :: FILN
54 INTEGER,INTENT(IN) :: ACCES_TYPE
55
56
57
58 INTEGER MY_PID,TLEN
59 CHARACTER(LEN=4096) TMPDIR
60 CHARACTER(LEN=20) :: CPID,CISPMD
61 CHARACTER(LEN=5) :: CFD
62
64 tlen=4096
65
66 tmpdir=''
68
69 WRITE(cpid,'(I10.10)') my_pid
70 WRITE(cispmd,'(I6.6)') ispmd
71 WRITE(cfd,'(I2.2)') fd
72#ifdef _WIN64
73 filn=tmpdir(1:tlen)//'\\'//trim(cfd)//'_'//rootn(1:lenrootn)//'_'//trim(cpid)//'_'//trim(cispmd)//'.tmp'
74#else
75 filn=tmpdir(1:tlen)//'/'//trim(cfd)//'_'//rootn(1:lenrootn)//'_'//trim(cpid)//'_'//trim(cispmd)//'.tmp'
76#endif
77
78 IF (acces_type == t_formated ) THEN
79
80 OPEN(unit=fd,form='FORMATTED',file=trim(filn))
81
82 ELSEIF (acces_type == t_direct_120 ) THEN
83
84 OPEN(unit=fd,form='FORMATTED',access='DIRECT',recl=120,file=trim(filn))
85 ENDIF
void tmpenvf(char *tmpdir, int *tmplen)