Exemplo n.º 1
0
        /// <summary>
        /// Pulls out the most recent SimEvents
        /// </summary>
        /// <param name="recentCount"></param>
        /// <returns></returns>
        public IEnumerable <SimEvent> RecentSimEvents(int recentCount = 5)
        {
            if (recentCount > 0)
            {
                return(SimEvents.GetSimEvents().OrderByDescending(s => s.EventTime).Take(recentCount));
            }

            return(new List <SimEvent>());
        }
Exemplo n.º 2
0
        /// <summary>
        /// Inserts a new SimEvent to the database
        /// </summary>
        /// <param name="eventType">The event being logged</param>
        /// <param name="message">Optional message</param>
        /// <returns>True if the new sim state was logged to the database</returns>
        public bool LogSimEvent(SimEvent.Event eventType, string message = null)
        {
            // TODO: Capture returned SimEvent and return it somehow
            SimEvents.UpsertSimEvent(new SimEvent()
            {
                EventTime = DateTime.Now,
                EventType = eventType,
                Message   = message
            });

            return(UnitOfWork.Commit() != 0);
        }
Exemplo n.º 3
0
        public EncoderViewModel(
            ISimConnectService simConnectService,
            string name,
            Expression <Func <DaniDeviceState, short> > getValueExpression,
            int buttonIndex,
            SimEvents increaseEvent,
            SimEvents decreaseEvent)
        {
            if (!(getValueExpression?.Body is MemberExpression memberExpression))
            {
                throw new ArgumentException("The argument must be a MemberExpression", nameof(getValueExpression));
            }

            _simConnectService = simConnectService;
            _getValue          = getValueExpression.Compile();

            IncreaseEvent = increaseEvent;
            DecreaseEvent = decreaseEvent;
            InputName     = memberExpression.Member.Name;
            ButtonIndex   = buttonIndex;
            Name          = name;
        }
Exemplo n.º 4
0
 public void SendEvent(SimEvents evt, uint evtData)
 {
     m_simConnect.TransmitClientEvent(0U, (Enum)evt, evtData, (Enum)NOTIFICATION_GROUPS.GENERIC, SIMCONNECT_EVENT_FLAG.GROUPID_IS_PRIORITY);
 }
 public void TransmitEvent(SimEvents simEvent, uint value)
 => _simConnect?.TransmitClientEvent(0, simEvent, value,
                                     MyGroups.FirstGroup, SIMCONNECT_EVENT_FLAG.GROUPID_IS_PRIORITY);
Exemplo n.º 6
0
 public void WriteEvent(SimEvents simEvent, uint data)
 {
     _simConnect.TransmitClientEvent(0U, simEvent, data, (Enum)NotificationGroups.GROUP0, SIMCONNECT_EVENT_FLAG.GROUPID_IS_PRIORITY);
 }
Exemplo n.º 7
0
 private string ParseEventString(SimEvents simEvent)
 {
     return(simEvent.ToString().Replace("KEY_", ""));
 }