// *** ISerializable interface implementation *** public void Save(BinarySerializer writer) { Utils.ThrowException(writer == null ? new ArgumentNullException("writer") : null); // the following statements throw serialization-related exceptions writer.WriteDouble(mC); writer.WriteDouble(mEps); mIdxToLbl.Save(writer); writer.WriteObject(mLblCmp); writer.WriteBool(mModelId != -1); if (mModelId != -1) { SvmLightLib.WriteByteCallback wb = delegate(byte b) { writer.WriteByte(b); }; SvmLightLib.SaveMulticlassModelBinCallback(mModelId, wb); GC.KeepAlive(wb); } }