예제 #1
0
        public unsafe bool TryGetValueFromBytes(byte *ptr, int byteCount, out OscActionPair value)
        {
            var debugBlobStr = new BlobString(ptr, byteCount);

            debugBlobStr.Dispose();
            return(HandleToValue.TryGetValue(new BlobHandle(ptr, byteCount), out value));
        }
예제 #2
0
        public void Add(string str, T value)
        {
            if (str == null || SourceToBlob.ContainsKey(str))
            {
                return;
            }

            var blobStr = new BlobString(str);

            HandleToValue.Add(blobStr.Handle, value);
            SourceToBlob.Add(str, blobStr);
        }
예제 #3
0
 public void Add(string address, OscActionPair callbacks)
 {
     if (!SourceToBlob.TryGetValue(address, out var blobStr))
     {
         blobStr = new BlobString(address);
         HandleToValue[blobStr.Handle] = callbacks;
         SourceToBlob.Add(address, blobStr);
     }
     else
     {
         if (HandleToValue.ContainsKey(blobStr.Handle))
         {
             HandleToValue[blobStr.Handle] += callbacks;
         }
         else
         {
             HandleToValue[blobStr.Handle] = callbacks;
         }
     }
 }
예제 #4
0
 public bool Remove(BlobString blobStr)
 {
     return(HandleToValue.Remove(blobStr.Handle));
 }
예제 #5
0
 public void Add(BlobString blobStr, T value)
 {
     HandleToValue.Add(blobStr.Handle, value);
 }