public void OnMesgDefinition(object sender, MesgDefinitionEventArgs e)
 {
     // Notify any subscribers
     if (MesgDefinitionEvent != null)
     {
         MesgDefinitionEvent(sender, e);
     }
 }
Пример #2
0
 // Client implements their handlers of interest and subscribes to MesgBroadcaster events
 static void OnMesgDefn(object sender, MesgDefinitionEventArgs e)
 {
     Console.WriteLine("OnMesgDef: Received Defn for local message #{0}, global num {1}", e.mesgDef.LocalMesgNum, e.mesgDef.GlobalMesgNum);
      Console.WriteLine("\tIt has {0} fields and is {1} bytes long", e.mesgDef.NumFields, e.mesgDef.GetMesgSize());
 }
Пример #3
0
        void OnMesgDefinition(object sender, MesgDefinitionEventArgs e)
        {
            if (fitDest == null)
            {
                return;
            }

            // Store MesgDefinition.
            var mesgDef = e.mesgDef;
            mesgDefinitions[mesgDef.LocalMesgNum] = mesgDef;

            if (mesgDef.IsBigEndian)
            {
                // Fit.BigEndian
                BinaryWriter bw = new BinaryWriter(fitDest);
                bw.Write((byte)(mesgDef.LocalMesgNum + Fit.MesgDefinitionMask));
                bw.Write((byte)Fit.MesgDefinitionReserved);
                bw.Write((byte)Fit.BigEndian);
                bw.Write((byte)(mesgDef.GlobalMesgNum >> 8));
                bw.Write((byte)mesgDef.GlobalMesgNum);
                bw.Write(mesgDef.NumFields);

                if (mesgDef.NumFields != mesgDef.GetFields().Count)
                {
                    throw new FitException("MesgDefinition:Write - Field Count Internal Error");
                }
                foreach (var fieldDef in mesgDef.GetFields())
                {
                    bw.Write(fieldDef.Num);
                    bw.Write(fieldDef.Size);
                    bw.Write(fieldDef.Type);
                }
            }
            else
            {
                // Fit.LittleEndian
                mesgDef.Write(fitDest);
            }
        }
Пример #4
0
 public void OnMesgDefinition(object sender, MesgDefinitionEventArgs e)
 {
     // Notify any subscribers
      if (MesgDefinitionEvent != null)
      {
     MesgDefinitionEvent(sender, e);
      }
 }