예제 #1
0
 public void receive(int lCMReceiveRate, ApplicationProperties props, RTMATransmitter rtmaTransmitter)
 {
     try
     {
         lCM.SubscribeAll(new SimpleSubscriber(props, rtmaTransmitter));
     }
     catch (Exception e)
     {
         Console.Error.WriteLine("Ex: " + e);
         Environment.Exit(1);
     }
 }
예제 #2
0
        public static void Main(string[] args)
        {
            ApplicationProperties props;

            Console.WriteLine("LCMRTMA Connector Started");

            using (var input = File.OpenText("Properties/props.yaml"))
            {
                var deserializer = new DeserializerBuilder()
                                   .WithNamingConvention(new CamelCaseNamingConvention())
                                   .Build();

                props = deserializer.Deserialize <ApplicationProperties>(input);
            }

            var    appLCM     = new LCM.LCM.LCM();
            string rtmaServer = props.Rtma.Host + ":" + props.Rtma.Port;

            RTMATransmitter rtmaTransmitter = new RTMATransmitter(rtmaServer);

            LCMReceiver lcmReceiver = new LCMReceiver();

            lcmReceiver.receive(props.Lcm.ParseRate, props, rtmaTransmitter);

            LCMTransmitter lcmTransmitter = new LCMTransmitter();

            RTMAReceiver rtmaReceiver = new RTMAReceiver(rtmaServer, lcmTransmitter);

            while (true)
            {
                rtmaReceiver.receive();
            }
            ;

            rtmaReceiver.disconnect();
            rtmaTransmitter.disconnect();
        }
예제 #3
0
 public SimpleSubscriber(ApplicationProperties props, RTMATransmitter rtmaTransmitter) : base()
 {
     this.props           = props;
     this.rtmaTransmitter = rtmaTransmitter;
 }