Télécharger CCASSIS.INC

Retour à la liste

Numérotation des lignes :

  1. ** pour le fonctionnement des ASSISTANTs
  2. ** """""""""""""""""""""""""""""""""""""""
  3. ** 04/04/14: Modif GF: declaration explicite des variables
  4. ** utilisation par le MAITRE
  5. ** """""""""""""""""""""""""""
  6. ** NBESC : nombre d'ASSISTANTs
  7. ** NBESCR : nombre d'ASSISTANTs possibles
  8. ** NBTHRS : nombre de threads possibles pour resou
  9. ** MESCL : liste des pointeurs sur les listes des instructions
  10. ** pour les ASSISTANTs
  11. ** IPCAR1 : pointeur sur la chaine contenant la ligne de commande
  12. ** (pour les erreurs)
  13. common/cassis/nbesc,mescl(0:512),ipcar1,nbescr,nbthrs
  14. integer nbesc,mescl,ipcar1,nbescr,nbthrs
  15. **
  16. ** pour le decodage des objets et pour trouver l'instruction
  17. ** LODESL : VRAI dans l'operateur ASSIstant
  18. ** LOTRMA : le maitre doit faire le travail d'un assistant
  19. ** LOTESC : logique indiquant le fonctionnement en assistant
  20. ** LODEFE : logique indiquant que opti assi est défini
  21. LOGICAL LODESL,LOTRMA,LOTESCPV,LODEFE,LOTESC
  22. common/cassi1/LODESL,LOTRMA,LOTESCPV,LODEFE
  23. **
  24. ** utilisation par un ASSISTANT
  25. ** """"""""""""""""""""""""""""""
  26. ** INASS1 : numero de l'ASSISTANT
  27. ** IMESIN : pointeur sur le segment contenant la liste
  28. ** des instructions pour un ASSISTANT
  29. ** IMESCL : pointeur sur le segment contenant l'instruction
  30. ** en cours de traitement
  31. ** IMESTR : pointeur sur le segment MESTRA pour le gerer le MENAGE
  32. ** IERRES : pointeur sur le segment MERRES des erreurs
  33. integer imesdm
  34. parameter (imesdm=64)
  35. common/cassi2/imescl(0:imesdm),imestr,ierres
  36. integer imescl,imestr,ierres
  37. **
  38. **
  39. **
  40. ** pour gerer le menage
  41. ** """"""""""""""""""""""
  42. segment MESTRA
  43. integer IIIIII
  44. end segment
  45. **
  46. ** pour gerer les erreurs
  47. ** """"""""""""""""""""""""
  48. segment MERRES
  49. * est on en situation d'erreur ?
  50. logical LOSIER
  51. * numero de l'assistant qui a gemerer l'erreur
  52. integer IASSER
  53. * nombre d'erreurs
  54. integer NBERR
  55. * liste des erreurs
  56. integer liserr(3,NERR)
  57. end segment
  58. **
  59. ** liste des instructions pour un ASSISTANT
  60. ** """"""""""""""""""""""""""""""""""""""""""
  61. segment MESINS
  62. * numero de l assistant
  63. integer inass
  64. * liste des instructions chainees
  65. integer lismes(NINS)
  66. * nombre d'instructions chainees
  67. integer nbins
  68. * instruction courante (pour gerer le menage)
  69. integer inscou
  70. end segment
  71. **
  72. ** codage d'une instruction
  73. ** """"""""""""""""""""""""""
  74. segment mescla
  75. * pointeur sur la chaine contenant la ligne de commande
  76. * (pour les erreurs)
  77. integer jpcar1
  78. * objets operandes
  79. integer imotlv
  80. logical esoplu(100)
  81. character*8 esopty(100)
  82. integer esopva(100)
  83. character*72 esopch(100)
  84. logical esoplo(100)
  85. real*8 esopre(100)
  86. * objets esclaves pour le retour
  87. integer esrees(100)
  88. * pour recuperer l'erreur eventuelle
  89. integer jjjerr
  90. endsegment
  91. pointeur mescl1.mescla,mescl2.mescla
  92. **
  93. ** codage d'un resultat (chapeau)
  94. ** """""""""""""""""""""""""""""""
  95. segment mesres
  96. * resultat generé après une erreur de l'assistant
  97. INTEGER ESIERR
  98. * pour savoir si l'objet a ete mis a jour par l'assistant
  99. LOGICAL LOREMP
  100. * pointeur sur le resultat
  101. INTEGER IESRES
  102. endsegment
  103. **
  104. ** codage d'un resultat
  105. ** """"""""""""""""""""""
  106. segment nesres
  107. character*8 esrety
  108. logical esrelo
  109. integer esreva
  110. character*72 esrech
  111. real*8 esrere
  112. endsegment
  113.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales