internal void Process(Microsoft.ReportingServices.OnDemandReportRendering.Report report, OnDemandProcessingContext odpContext, bool generateDocumentMap, bool createSnapshot)
 {
     m_odpContext     = odpContext;
     m_report         = report;
     m_generateDocMap = (generateDocumentMap && m_report.HasDocumentMap);
     m_createSnapshot = createSnapshot;
     if (m_generateDocMap)
     {
         odpContext.HasRenderFormatDependencyInDocumentMap = false;
     }
     if (m_generateDocMap || m_createSnapshot)
     {
         foreach (Microsoft.ReportingServices.OnDemandReportRendering.ReportSection reportSection in report.ReportSections)
         {
             Visit(reportSection);
         }
     }
     if (m_generateDocMap && m_docMapWriter != null)
     {
         m_docMapWriter.WriteEndContainer();
         m_docMapWriter.Close();
         m_docMapWriter = null;
         if (odpContext.HasRenderFormatDependencyInDocumentMap)
         {
             odpContext.OdpMetadata.ReportSnapshot.SetRenderFormatDependencyInDocumentMap(odpContext);
         }
     }
 }
 private void InitWriter()
 {
     m_docMapStream = m_odpContext.ChunkFactory.CreateChunk("DocumentMap", Microsoft.ReportingServices.ReportProcessing.ReportProcessing.ReportChunkTypes.Interactivity, null);
     m_docMapWriter = new DocumentMapWriter(m_docMapStream, m_odpContext);
     m_docMapWriter.WriteBeginContainer(m_report.Name, m_report.Instance.UniqueName);
 }
 private void InitWriter()
 {
     this.m_docMapStream = this.m_odpContext.ChunkFactory.CreateChunk("DocumentMap", AspNetCore.ReportingServices.ReportProcessing.ReportProcessing.ReportChunkTypes.Interactivity, null);
     this.m_docMapWriter = new DocumentMapWriter(this.m_docMapStream, this.m_odpContext);
     this.m_docMapWriter.WriteBeginContainer(this.m_report.Name, this.m_report.Instance.UniqueName);
 }