private void Add(ref BinaryTree.Node position, BinaryTree.Node newNode) { if (position == null) { position = newNode; count++; return; } int comparison = String.Compare(position.Name, newNode.Name); if (comparison == 0) { #if DEBUG Console.WriteLine("{0} {1}", position.Name, newNode.Name); #endif } else if (comparison < 0) { Add(ref position.left, newNode); } else if (comparison > 0) { Add(ref position.right, newNode); } }
internal static void Init() { for (int i = 0; i < 64; i++) { TypeNames[i] = new BinaryTree.Node("", i); } }
public static int Register(string name, int size) { int val = Message.Types.Count + 64; BinaryTree.Node node = new BinaryTree.Node(name, val); Message.Types.Add(node); Message.TypeNames[val] = node; return(val); }
internal static void Invoke(MessageHeader message_header, List <object> parameters) { BinaryTree.Node node = Message.TypeNames[message_header.MessageType]; if (node == null) { return; } Invoke(node.invokerlist, message_header, parameters); }
public static int Register(string name, int size) { int val = Message.Types.Count + 64; BinaryTree.Node node = new BinaryTree.Node(name, val); Message.Types.Add(node); Message.TypeNames[val] = node; return val; }