Opc.Ua.FiniteStateMachineState.GetNewStateForTransition C# (CSharp) Method

GetNewStateForTransition() protected method

Returns the new state for the specified transition. Returns 0 if the transition is not allowed.
protected GetNewStateForTransition ( ISystemContext context, uint transitionId ) : uint
context ISystemContext
transitionId uint
return uint
        protected virtual uint GetNewStateForTransition(ISystemContext context, uint transitionId)
        {
            uint currentState = GetCurrentStateId();

            if (currentState == 0)
            {
                return 0;
            }

            uint[,] transitionMappings = TransitionMappings;

            if (transitionMappings == null)
            {
                return 0;
            }

            int length = transitionMappings.GetLength(0);

            for (int ii = 0; ii < length; ii++)
            {
                if (transitionMappings[ii,0] == transitionId && transitionMappings[ii,1] == currentState)
                {
                    return transitionMappings[ii,2];
                }
            }                

            return 0;
        }