Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1804 connectés 

  FORUM HardWare.fr
  Programmation
  Ada

  accès à fonction importée à accè à fonction importé.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

accès à fonction importée à accè à fonction importé.

n°1913734
The matrix
Chacun fait ce qu'il en veut.
Posté le 10-08-2009 à 21:47:54  profilanswer
 

Bonjour, je doit affecter un accès à une fonction importé de C à un accès importé de C avec Ada.
Dans le code ci dessous par exemple... la function Pt_Time ne s'affecte pas ....
 
 
J'ai un paquetage PortTime ::=

Code :
  1. package Porttime is
  2.  
  3.   function Pt_Time return Long_Integer;
  4.   pragma Import (C, Pt_Time, "Pt_Time" );
  5. end Porttime;


Et un paquetage PortMidi ::=

Code :
  1. with System;
  2. with Interfaces.C;
  3. with System.Address_To_Access_Conversions;
  4. package Portmidi is
  5. function Pm_OpenOutput( PortMidiStream :System.address;
  6.                           OutputDevice : Integer;
  7.                           outputDriverInfo : System.address;
  8.                           BufferSize : Long_Integer;
  9.                           Time_Proc : access function return Long_Integer;
  10.                           Time_Info : System.address;
  11.                           latency : Long_integer) return PmError;
  12. end Portmidi;


 
Et une affectation à faire, je pensais logiquement la suivante ::=  

Code :
  1. Error := Pm_OpenOutput( PortMidiStream => PortMidiStream_Ptr,
  2.                           OutputDevice => device,
  3.                           outputDriverInfo => OutputDriverInfo_ptr,
  4.                           BufferSize => 10,
  5.                           Time_Proc => Pt_Time'access,
  6.                           Time_Info => Time_Info_ptr,
  7.                           latency => 2);


 
Et un compilo qui me dit ::
 

manu@Chaos:~/Harmonie$ gnatmake main -larg -lportmidi -lporttime
gcc-4.3 -c -larg -lportmidi -lporttime main.adb
main.adb:188:41: subprogram "Pt_Time" has wrong convention
main.adb:188:41: does not match convention of access access to subprogram with profile "T12s"
main.adb:188:41: probable missing pragma Convention for access to subprogram with profile "T12s"
gnatmake: "main.adb" compilation error


 
Merci !  :jap:
 
Edit : pardon je m'étais trompé.


Message édité par The matrix le 10-08-2009 à 21:50:23

---------------
des gestes simples et ponctués, par quelques points presque importants, la précision coordonnée, d'une île déserte, des plans secrets, d'un architecte, à la retraite, passionné par son métier, refaire le monde, à son idée, tracer des routes, les emprunter
mood
Publicité
Posté le 10-08-2009 à 21:47:54  profilanswer
 

n°1913743
The matrix
Chacun fait ce qu'il en veut.
Posté le 10-08-2009 à 22:04:35  profilanswer
 

Up ! [:blackmetal]


---------------
des gestes simples et ponctués, par quelques points presque importants, la précision coordonnée, d'une île déserte, des plans secrets, d'un architecte, à la retraite, passionné par son métier, refaire le monde, à son idée, tracer des routes, les emprunter
n°1913746
The matrix
Chacun fait ce qu'il en veut.
Posté le 10-08-2009 à 22:11:47  profilanswer
 

Mon énoncé n'est pas clair.
Je désirerais affecter la fonction Pt_Time au paramètre Time_Proc.
 

Spoiler :


Vous avez 4 heures
 


Spoiler :


 
 [:dawa_neowen]  


Spoiler :


 [:chapi-chapo]  


Message édité par The matrix le 10-08-2009 à 22:12:09

---------------
des gestes simples et ponctués, par quelques points presque importants, la précision coordonnée, d'une île déserte, des plans secrets, d'un architecte, à la retraite, passionné par son métier, refaire le monde, à son idée, tracer des routes, les emprunter
n°1913752
The matrix
Chacun fait ce qu'il en veut.
Posté le 10-08-2009 à 22:27:35  profilanswer
 

done !
 
 
J'ai déclaré un type Time_access comme accès à fonction retournant un long et j'ai ajouté un pragma convention (C, Time_Access);
2points.


---------------
des gestes simples et ponctués, par quelques points presque importants, la précision coordonnée, d'une île déserte, des plans secrets, d'un architecte, à la retraite, passionné par son métier, refaire le monde, à son idée, tracer des routes, les emprunter

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Ada

  accès à fonction importée à accè à fonction importé.

 

Sujets relatifs
Fonction mail OK en ligne de commande php, KO par le WebFonction qui retourne une structure
Acces serveur de fichier distant(javascript) retarder le lancement d'une fonction
C++ fonction d'une ligne : besoin d'accolades ?récuperer le parametre value d'un bouton dans la fonction execappli
Autorisations d'accès dynamiquesAcces au registre du port parallele
cast sur un pointeur de fonctionaccés a distance
Plus de sujets relatifs à : accès à fonction importée à accè à fonction importé.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR