OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
build_msg.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| build_msg ../engine/source/output/message/build_msg.F
25!||--- called by ------------------------------------------------------
26!|| execargcheck ../engine/source/engine/execargcheck.F
27!|| radioss2 ../engine/source/engine/radioss2.F
28!||--- calls -----------------------------------------------------
29!|| fredec2i ../engine/source/output/message/fredec2i.F
30!|| fredec3 ../engine/source/output/message/fredec3.F
31!|| stock_msg ../engine/source/output/message/stock_msg.F
32!||--- uses -----------------------------------------------------
33!|| message_mod ../engine/share/message_module/message_mod.F
34!|| names_and_titles_mod ../common_source/modules/names_and_titles_mod.F
35!||====================================================================
36 SUBROUTINE build_msg()
37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE message_mod
42C-----------------------------------------------
43C I m p l i c i t T y p e s
44C-----------------------------------------------
45#include "implicit_f.inc"
46C-----------------------------------------------
47C D u m m y A r g u m e n t s
48C-----------------------------------------------
49 CHARACTER(LEN=NCHARLINE100) BUFMSG(100)
50C-----------------------------------------------
51C L o c a l V a r i a b l e s
52C-----------------------------------------------
53 CHARACTER(LEN=NCHARLINE100) LINE,KEY,KEYST
54 INTEGER I,J,ID,ITYPE,INDX,SBUFMSG,ISTYPE
55C predim
56 smessages=1
57 DO i=1,100
58 bufmsg(i)=' '
59 END DO
60 DO i=1,smessagesfile
61C fill MESSAGES
62 line=messagesfile(i)
63 IF (line(1:9)=='/MESSAGE/') THEN
64 CALL fredec2i(line,id)
65 IF (id>smessages) THEN
66 smessages=id
67 END IF
68 END IF
69 END DO
70 smessages=min(smessages,smessagesmax)
71 ALLOCATE(messages(2,smessages))
72 id=0
73 sbufmsg=0
74 itype=0
75 DO i=1,smessagesfile
76C remplir MESSAGES
77 line=messagesfile(i)
78 IF (line(1:9)=='/MESSAGE/') THEN
79 IF (id>0.AND.id<=smessagesmax.AND.itype/=0) THEN
80 CALL stock_msg(id,itype,sbufmsg,bufmsg)
81 END IF
82 sbufmsg=0
83 id=1
84 CALL fredec2i(line,id)
85 CALL fredec3(line,key)
86 itype=1
87 IF (key(1:5)=='TITLE') THEN
88 itype=1
89 ELSE IF (key(1:11)=='DESCRIPTION') THEN
90 itype=2
91 END IF
92 ELSE
93 IF (id>0.AND.line(1:1)/='#') THEN
94 sbufmsg=sbufmsg+1
95 bufmsg(sbufmsg)=line
96 END IF
97 END IF
98 END DO
99 IF (id>0.AND.id<=smessagesmax.AND.itype/=0) THEN
100 CALL stock_msg(id,itype,sbufmsg,bufmsg)
101 END IF
102 END SUBROUTINE
subroutine build_msg()
Definition build_msg.F:37
subroutine fredec2i(line, id)
Definition fredec2i.F:33
subroutine fredec3(line, key)
Definition fredec3.F:33
#define min(a, b)
Definition macros.h:20
integer, parameter ncharline100
subroutine stock_msg(id, itype, sbufmsg, bufmsg)
Definition stock_msg.F:31