//============================================================================= public Wall(SerializationInfo info, StreamingContext context) : base(info, context) { // int iMajor = (int)info.GetValue(_sWall_strMajor, typeof(int)); int iMinor = (int)info.GetValue(_sWall_strMinor, typeof(int)); if (iMajor > _sWall_MAJOR) { ++DrawingDocument._sNewVersion_StreamRead; } else if (iMajor == _sWall_MAJOR && iMinor > _sWall_MINOR) { ++DrawingDocument._sNewVersion_StreamRead; } if (iMajor <= _sWall_MAJOR) { try { if (iMajor >= 1 && iMinor >= 0) { m_WallPosition = (eWallPosition)info.GetValue("WallPosition", typeof(eWallPosition)); } } catch { ++DrawingDocument._sStreamReadException; } } else { ++DrawingDocument._sBiggerMajorNumber; } }
//============================================================================= protected override void _SetState(GeometryState state) { base._SetState(state); Wall_State wallState = state as Wall_State; if (wallState == null) { return; } this.m_WallPosition = wallState.WallPosition; }