private TaskInventorySnapshot ExtractSOPInventorySnapshot(dynamic osPart)
        {
            dynamic itemList = osPart.TaskInventory;

            TaskInventorySnapshot invSnap = new TaskInventorySnapshot();

            invSnap.Items  = new TaskInventoryItemSnapshot[itemList.Count];
            invSnap.Serial = osPart.InventorySerial;

            int i = 0;

            foreach (dynamic item in itemList)
            {
                invSnap.Items[i++] = ConvertOpenSimTaskInventoryItemToSnapshot(item.Value);
            }

            return(invSnap);
        }
        private TaskInventorySnapshot ExtractSOPInventorySnapshot(dynamic osPart)
        {
            dynamic itemList = osPart.TaskInventory;

            TaskInventorySnapshot invSnap = new TaskInventorySnapshot();
            invSnap.Items = new TaskInventoryItemSnapshot[itemList.Count];
            invSnap.Serial = osPart.InventorySerial;

            int i = 0;
            foreach (dynamic item in itemList)
            {
                invSnap.Items[i++] = ConvertOpenSimTaskInventoryItemToSnapshot(item.Value);
            }

            return invSnap;
        }