示例#1
0
        public static GameDataWorker WorkerForGame(
            this GameDict games,
            GameID gameID,
            ITransmitConnection connection,
            Action <TelemetryDatapool> processCallback)
        {
            var dataReader    = games.DataReaderForGame(gameID);
            var dataProcessor = games.DataProcessForGame(gameID, connection);

            dataProcessor.ProcessedCallback += processCallback;

            return(new GameDataWorker(dataReader, dataProcessor));
        }
示例#2
0
        public static IGameDataProcessor DataProcessForGame(
            this GameDict games,
            GameID ID,
            ITransmitConnection connection)
        {
            switch (ID)
            {
            case GameID.RaceRoomExperience:
                return(new RaceRoomDataProcessor(connection));

            case GameID.ProjectCars2:
                return(new ProjectCarsDataProcessor(connection));

            case GameID.DirtRally:
                return(new DirtRallyDataReader(connection));

            default:
                return(null);
            }
        }
示例#3
0
 protected TelemetryProtocolProcessor(ITransmitConnection connection) : this()
 {
     this.connection = connection;
 }
示例#4
0
 public DirtRallyDataReader(ITransmitConnection connection) : base(connection)
 {
 }
 public RaceRoomDataProcessor(ITransmitConnection connection) : base(connection)
 {
 }
示例#6
0
 public ProjectCarsDataProcessor(ITransmitConnection connection) : base(connection)
 {
 }
示例#7
0
 public void Remove(ITransmitConnection connection)
 {
     connections.Remove(connection);
 }
示例#8
0
 public void Add(ITransmitConnection connection)
 {
     connections.Add(connection);
 }