コード例 #1
0
 public Enumerator(InputActionQueue queue)
 {
     m_Queue        = queue;
     m_Buffer       = (ActionEvent *)queue.m_EventBuffer.bufferPtr.ToPointer();
     m_EventCount   = queue.m_EventBuffer.eventCount;
     m_CurrentEvent = null;
     m_CurrentIndex = 0;
 }
コード例 #2
0
 public Enumerator(InputActionTrace trace)
 {
     m_Trace        = trace;
     m_Buffer       = (ActionEvent *)trace.m_EventBuffer.bufferPtr.ToPointer();
     m_EventCount   = trace.m_EventBuffer.eventCount;
     m_CurrentEvent = null;
     m_CurrentIndex = 0;
 }
コード例 #3
0
            public bool MoveNext()
            {
                if (m_CurrentIndex == m_EventCount)
                {
                    return(false);
                }

                if (m_CurrentEvent == null)
                {
                    m_CurrentEvent = m_Buffer;
                    return(m_CurrentEvent != null);
                }

                Debug.Assert(m_CurrentEvent != null);

                ++m_CurrentIndex;
                if (m_CurrentIndex == m_EventCount)
                {
                    return(false);
                }

                m_CurrentEvent = (ActionEvent *)InputEvent.GetNextInMemory((InputEvent *)m_CurrentEvent);
                return(true);
            }
コード例 #4
0
 public void Reset()
 {
     m_CurrentEvent = null;
     m_CurrentIndex = 0;
 }
コード例 #5
0
 internal ActionEventPtr(InputActionMapState state, ActionEvent *eventPtr)
 {
     m_State = state;
     m_Ptr   = eventPtr;
 }