예제 #1
0
 public MessageBufferData(Message message, BufferClearType clearType)
 {
     this.message         = message;
     this.clearType       = clearType;
     this.receivedMessage = false;
     this.frameProtected  = false;
 }
예제 #2
0
    public void AddMessage(Message message, BufferClearType clearType)
    {
        if (allData.ContainsKey(message))
        {
            Debug.LogError("AddMessage failed: Message buffer " + this.name + " already contains entry for message " + message);
            return;
        }

        this.Observe(message);

        MessageBufferData msgData = new MessageBufferData(message, clearType);

        allData.Add(message, msgData);
        switch (clearType)
        {
        case BufferClearType.OnConsume:
            consumedData.Add(msgData);
            break;

        case BufferClearType.NextFrameFixedUpdate:
            fixedUpdateData.Add(msgData);
            break;

        case BufferClearType.NextFrameUpdate:
            updateData.Add(msgData);
            break;

        case BufferClearType.NextFrameLateUpdate:
            lateUpdateData.Add(msgData);
            break;
        }
    }