Télécharger cpi2li.eso

Retour à la liste

Numérotation des lignes :

cpi2li
  1. C CPI2LI SOURCE PV 17/12/05 21:15:39 9646
  2. subroutine cpi2li(pile,liste)
  3. C=======================================================================
  4. C Sous-programme cpi2li (Collaborateur PIles vers LIste
  5. C Convertit une pile ICOLAC en une liste LISTARG
  6. C Cela est fait en parcourant toutes les piles et en ajoutant les
  7. C objets trouvés à la liste.
  8.  
  9. C=======================================================================
  10. integer iPil,nbPile
  11. integer nArg,iArg
  12. character*(8) typNom
  13. integer iObj, nbObj
  14. -INC TMCOLAC
  15. segment LISARG
  16. character*8 nom(nArg)
  17. integer adress(nArg)
  18. endsegment
  19. pointeur pile.ICOLAC
  20. pointeur pilTyp.ITLACC
  21. pointeur liste.LISARG
  22. C write(ioimp,*) 'Entree dans CPI2LI ************'
  23. nArg=liste.adress(/1)
  24. iArg = nArg
  25. nbPile=pile.kcola(/1)
  26. C Parcours des piles
  27. do iPil=1,nbPile
  28. pilTyp=pile.kcola(iPil)
  29. C Recuperation de son type
  30. typNom=' '
  31. call typfil(typNom,iPil)
  32. nbObj=pilTyp.itlac(/1)
  33. nArg=nArg + nbObj
  34. segadj liste
  35. C Pour chaque objet de la pile
  36. do iObj=1,nbObj
  37. iArg=iArg+1
  38. liste.nom(iArg)=typNom
  39. liste.adress(iArg)=pilTyp.itlac(iObj)
  40. enddo
  41. if(iArg.ne.nArg) call erreur(5)
  42. enddo
  43. C write(ioimp,*) 'Sortie de CPI2LI **************'
  44. return
  45. end
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  

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