Ejemplo n.º 1
0
        public NamedMultiDimArray UnpackNamedMultiDimArray <T>(MessageElementNamedMultiDimArray l) where T : struct
        {
            string typename;

            if (CompareNamespace(l.Type, out typename))
            {
                return(((INamedArrayStub <T>)FindNamedArrayStub(typename)).UnpackNamedMultiDimArray(l));
            }
            else
            {
                return(node.UnpackNamedMultiDimArray <T>(l, context));
            }
        }
        public virtual NamedMultiDimArray UnpackNamedMultiDimArray(MessageElementNamedMultiDimArray s3)
        {
            if (s3.Type != TypeName)
            {
                throw new DataTypeException("pod type mismatch");
            }
            var o = new NamedMultiDimArray();
            var marrayElements = s3.Elements;

            o.Dims = (MessageElementUtil.FindElementAndCast <uint[]>(marrayElements, "dims"));
            var s2 = (MessageElementUtil.FindElementAndCast <MessageElementNamedArray>(marrayElements, "array"));

            o.namedarray_array = UnpackNamedArray(s2);
            return(o);
        }