private void Assign(SttpDataPointID metadata, int channelID)
 {
     while (m_channelMap.Count <= channelID)
     {
         m_channelMap.Add(null);
     }
     m_channelMap[channelID] = metadata;
 }
示例#2
0
        private int GetChannelID(SttpDataPoint point, out bool includeMetadata)
        {
            includeMetadata = false;
            if (!m_pointIDToChannelIDMapping.TryGetValue(point.DataPoint, out var channelID))
            {
                includeMetadata = true;
                channelID       = m_metadataCount;
                m_pointIDToChannelIDMapping.Add(point.DataPoint, channelID);

                if (m_metadataCount + 1 == m_metadata.Length)
                {
                    var newList = new SttpDataPointID[m_metadata.Length * 2];
                    m_metadata.CopyTo(newList, 0);
                    m_metadata = newList;
                }

                m_metadata[m_metadataCount] = point.DataPoint;
                m_metadataCount++;
            }
            return(channelID);
        }