Logo Search packages:      
Sourcecode: ndoc version File versions  Download package

ReflectionEngineParameters.cs

// Copyright (C) 2004  Kevin Downs
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

using System;
using System.Collections;

namespace NDoc.Core.Reflection
{
      /// <summary>
      /// Summary description for ReflectionEngineParameters.
      /// </summary>
      [Serializable]
00026       public class ReflectionEngineParameters
      {
            /// <summary>
            /// constructor for ReflectionEngineParameters.
            /// </summary>
00031             public ReflectionEngineParameters(Project project)
            {
                  CopyProject(project);
            }

            /// <summary>
            /// constructor for ReflectionEngineParameters.
            /// </summary>
00039             public ReflectionEngineParameters(Project project, BaseReflectionDocumenterConfig config)
            {
                  CopyProject(project);
                  CopyConfig(config);
            }

            private void CopyProject(Project project)
            {
                  AssemblyFileNames = new ArrayList();
                  XmlDocFileNames = new ArrayList();
                  ReferencePaths  = new ReferencePathCollection();

                  foreach(AssemblySlashDoc assemblySlashDoc in project.AssemblySlashDocs)
                  {
                        if (assemblySlashDoc.Assembly.Path.Length>0)
                        {
                              string assemblyFileName = assemblySlashDoc.Assembly.Path;
                              AssemblyFileNames.Add(assemblyFileName);
                              string assyDir = System.IO.Path.GetDirectoryName(assemblyFileName);
                              ReferencePaths.Add(new ReferencePath(assyDir));
                        }
                        if (assemblySlashDoc.SlashDoc.Path.Length>0)
                        {
                              XmlDocFileNames.Add(assemblySlashDoc.SlashDoc.Path);
                        }
                  }

                  ReferencePaths.AddRange(project.ReferencePaths);

                  if (project.Namespaces==null)
                  {
                        NamespaceSummaries  = new SortedList();
                  }
                  else
                  {
                        NamespaceSummaries = project.Namespaces;
                  }
            }

            private void CopyConfig(BaseReflectionDocumenterConfig config)
            {
                  #region Documentation Control
                  this.AssemblyVersionInfo=config.AssemblyVersionInfo;
                  this.UseNamespaceDocSummaries=config.UseNamespaceDocSummaries;
                  this.AutoPropertyBackerSummaries=config.AutoPropertyBackerSummaries;
                  this.AutoDocumentConstructors=config.AutoDocumentConstructors;
                  this.SdkDocLanguage=config.SdkDocLanguage;
                  #endregion

                  #region missing 
                  this.ShowMissingSummaries=config.ShowMissingSummaries;
                  this.ShowMissingRemarks=config.ShowMissingRemarks;
                  this.ShowMissingParams=config.ShowMissingParams;
                  this.ShowMissingReturns=config.ShowMissingReturns;
                  this.ShowMissingValues=config.ShowMissingValues;
                  #endregion

                  #region visibility
                  this.DocumentInheritedMembers=config.DocumentInheritedMembers;
                  this.DocumentInheritedFrameworkMembers=config.DocumentInheritedFrameworkMembers;
                  this.DocumentExplicitInterfaceImplementations=config.DocumentExplicitInterfaceImplementations;
                  this.DocumentInternals=config.DocumentInternals;
                  this.DocumentProtected=config.DocumentProtected;
                  this.DocumentSealedProtected=config.DocumentSealedProtected;
                  this.DocumentPrivates=config.DocumentPrivates;
                  this.DocumentProtectedInternalAsProtected=config.DocumentProtectedInternalAsProtected;
                  this.DocumentEmptyNamespaces=config.DocumentEmptyNamespaces;
                  this.SkipNamespacesWithoutSummaries=config.SkipNamespacesWithoutSummaries;
                  this.EditorBrowsableFilter=config.EditorBrowsableFilter;
                  #endregion

                  #region Attributes
                  this.DocumentAttributes=config.DocumentAttributes;
                  this.DocumentInheritedAttributes=config.DocumentInheritedAttributes;
                  this.ShowTypeIdInAttributes=config.ShowTypeIdInAttributes;
                  this.DocumentedAttributes=config.DocumentedAttributes;
                  #endregion

                  #region additional info
                  this.CopyrightText=config.CopyrightText;
                  this.CopyrightHref=config.CopyrightHref;
                  this.FeedbackEmailAddress=config.FeedbackEmailAddress;
                  this.Preliminary=config.Preliminary;
                  #endregion

                  #region threadsafety
                  this.IncludeDefaultThreadSafety=config.IncludeDefaultThreadSafety;
                  this.StaticMembersDefaultToSafe=config.StaticMembersDefaultToSafe;
                  this.InstanceMembersDefaultToSafe=config.InstanceMembersDefaultToSafe;
                  #endregion

            }


            #region Project Data
            /// <summary>
            /// 
            /// </summary>
00137             public ArrayList AssemblyFileNames;
            /// <summary>
            /// 
            /// </summary>
00141             public ArrayList XmlDocFileNames;
            /// <summary>
            /// 
            /// </summary>
00145             public ReferencePathCollection ReferencePaths;
            /// <summary>
            /// 
            /// </summary>
00149             public SortedList NamespaceSummaries;
            #endregion

            #region documentation control
            /// <summary>
            /// 
            /// </summary>
00156             public AssemblyVersionInformationType AssemblyVersionInfo ;
            /// <summary>
            /// 
            /// </summary>
00160             public bool UseNamespaceDocSummaries ;
            /// <summary>
            /// 
            /// </summary>
00164             public bool AutoPropertyBackerSummaries ;
            /// <summary>
            /// 
            /// </summary>
00168             public bool AutoDocumentConstructors ;
            /// <summary>
            /// 
            /// </summary>
00172             public SdkLanguage SdkDocLanguage ;
            #endregion
            
            #region missing
            /// <summary>
            /// 
            /// </summary>
00179             public bool ShowMissingSummaries ;
            /// <summary>
            /// 
            /// </summary>
00183             public bool ShowMissingRemarks ;
            /// <summary>
            /// 
            /// </summary>
00187             public bool ShowMissingParams ;
            /// <summary>
            /// 
            /// </summary>
00191             public bool ShowMissingReturns ;
            /// <summary>
            /// 
            /// </summary>
00195             public bool ShowMissingValues ;
            #endregion

            #region visibility
            /// <summary>
            /// 
            /// </summary>
00202             public DocumentedInheritedMembers DocumentInheritedMembers ;
            /// <summary>
            /// 
            /// </summary>
00206             public bool DocumentInheritedFrameworkMembers ;
            /// <summary>
            /// 
            /// </summary>
00210             public bool DocumentExplicitInterfaceImplementations ;
            /// <summary>
            /// 
            /// </summary>
00214             public bool DocumentInternals ;
            /// <summary>
            /// 
            /// </summary>
00218             public bool DocumentProtected ;
            /// <summary>
            /// 
            /// </summary>
00222             public bool DocumentSealedProtected ;
            /// <summary>
            /// 
            /// </summary>
00226             public bool DocumentPrivates ;
            /// <summary>
            /// 
            /// </summary>
00230             public bool DocumentProtectedInternalAsProtected ;
            /// <summary>
            /// 
            /// </summary>
00234             public bool DocumentEmptyNamespaces ;
            /// <summary>
            /// 
            /// </summary>
00238             public bool SkipNamespacesWithoutSummaries ;
            /// <summary>
            /// 
            /// </summary>
00242             public EditorBrowsableFilterLevel EditorBrowsableFilter ;
            #endregion

            #region Attributes
            /// <summary>
            /// 
            /// </summary>
00249             public bool DocumentAttributes ;
            /// <summary>
            /// 
            /// </summary>
00253             public bool DocumentInheritedAttributes ;
            /// <summary>
            /// 
            /// </summary>
00257             public bool ShowTypeIdInAttributes ;
            /// <summary>
            /// 
            /// </summary>
00261             public string DocumentedAttributes ;
            #endregion

            // the following are not esential to reflection
            // 

            #region Additional Info
            /// <summary>
            /// 
            /// </summary>
00271             public string CopyrightText ;
            /// <summary>
            /// 
            /// </summary>
00275             public string CopyrightHref ;
            /// <summary>
            /// 
            /// </summary>
00279             public string FeedbackEmailAddress ;
            /// <summary>
            /// 
            /// </summary>
00283             public bool Preliminary ;
            #endregion

            #region threadsafety
            /// <summary>
            /// 
            /// </summary>
00290             public bool IncludeDefaultThreadSafety ;
            /// <summary>
            /// 
            /// </summary>
00294             public bool StaticMembersDefaultToSafe ;
            /// <summary>
            /// 
            /// </summary>
00298             public bool InstanceMembersDefaultToSafe ;

            #endregion

      }
}

Generated by  Doxygen 1.6.0   Back to index