Bonjour à tous,

J'ai un problème qui me taquine depuis un moment, mais que je mets tjr un peu de coté n'ayant pas trouvé la solution.

Pour vous montrez un peux mon projet j'ai deux classes:
Nom : diagramme.jpg
Affichages : 180
Taille : 19,7 Ko
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 public partial class Program
    {
        // This method is run when the mainboard is powered up or reset.   
        void ProgramStarted()
        {
            //statusVoiture ETATVOITURE;
            Debug.Print("Program Started");
            CVoitureSD voiture = new CVoitureSD();
            CCarteSD carteSD = new CCarteSD();
 
        }
    }
CVoitureSD qui rempli une structure
et
CCarteSD qui doit écrire les valeur de la structure dans une carte Sd

Mon problème étant que je déclare la structure statusVoiture dans la classe CVoitureSD mais je ne sais pas comment "l'envoyer" dans la classe CCarteSD.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
Class CVoitureSD
    {
        private statusVoiture m_etat;
        GT.Timer m_timerCalculs;
        public CVoitureSD()
        {
 
 
            m_timerCalculs = new GT.Timer(3 * 1000);
            m_timerCalculs.Tick += m_timerCalculs_Tick;
            m_timerCalculs.Start();
        }
 
        void m_timerCalculs_Tick(GT.Timer timer)
        {
            m_etat.m_vitesseProgrammeeMoteur = 5;
            m_etat.m_vitesseReelleMoteur = 4;
 
        }
 
    public struct statusVoiture
    {
        // information protocole :
        public ushort m_vitesseProgrammeeMoteur;
        public ushort m_vitesseReelleMoteur;
    }
ici pour simplifier j'ai un Timer qui vient tout les 3 secondes changer les valeurs de la structure ( ici c'est toujours la même mais c'est un exemple)

Et en gros je veux envoyer la struct m_etat vers la class CCarteSD
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
class CCarteSD
    {
 
        GT.Timer m_timerCopieEtatSD;
        const int periode = 5;//5 secondes
        statusVoiture m_donnees;
        public CCarteSD()
        {
 
 
            m_timerCopieEtatSD = new GT.Timer(periode * 1000);
            m_timerCopieEtatSD.Tick += m_timerCopieEtatSD_Tick;
            m_timerCopieEtatSD.Start();
        }
 
void m_timerCopieEtatSD_Tick(GT.Timer timer)
        {
 
            writeXML(m_etat);  //BON LA ÉVIDEMMENT CA MARCHE PAS  MAIS C'EST ici que je voudrais que la structure m_etat de la classe CVoitureSD arrive pour écrire avec la méthode writteXML()
         }
public void writeXML(statusVoiture m_donnees)
        {
                //je vous épargne tout ça :)
 
        }
J'ai essayé la structure en référence mais je sais pas trop j'ai pas trop réussi.

Car j'ai un autre soucis dans la classe CVoitureSD les valeurs de la structure change toutes les 3 secondes donc il faut grosso modo que je mets a jour la structure de la CCarteSD qui doit copié tout les 5 secondes sur les info de cette structure.



Bon je vais arrêter de tartiner mon problème je vous expliquerais précisément les point que vous ne comprenez pas.

J’espère que vous allez pouvoir m'aider ça fait bien 3 mois j'ai ce problème et la je sature Help me please

Bonne journée a vous et merci a ce qui on prit le temps de lire tout ça.