public override void Load(BinaryReader reader) { string s; BinIO.string_read(reader, out s); if (s == "<object>") { // load lenet arguments int nclasses; BinIO.scalar_read(reader, out nclasses); lenetWrap.Classes = new int[nclasses]; for (int i = 0; i < nclasses; i++) { BinIO.scalar_read(reader, out lenetWrap.Classes[i]); } byte boolval; BinIO.scalar_read(reader, out boolval); lenetWrap.TanhSigmoid = Convert.ToBoolean(boolval); BinIO.scalar_read(reader, out boolval); lenetWrap.NetNorm = Convert.ToBoolean(boolval); BinIO.scalar_read(reader, out boolval); lenetWrap.AsciiTarget = Convert.ToBoolean(boolval); // load Narray from stream BinIO.narray_read(reader, lenetparam); double[] dbuffer = lenetparam.To1DArray(); Global.Debugf("info", "loading " + Name + ".."); // create lenet if (lenetWrap.IsEmpty) { lenetWrap.CreateLenet(lenetWrap.Classes.Length, lenetWrap.Classes, lenetWrap.TanhSigmoid, lenetWrap.NetNorm, lenetWrap.AsciiTarget); } // send loaded buffer to created lenet lenetWrap.LoadNetworkFromBuffer(dbuffer, dbuffer.Length); BinIO.string_read(reader, out s); if (s != "</object>") { throw new Exception("Expected string: </object>"); } } }