001    /*
002    Copyright (C) 2000 Chr. Clemens Lee <clemens@kclee.com>.
003    
004    This file is part of JavaNCSS
005    (http://www.kclee.com/clemens/java/javancss/).
006    
007    JavaNCSS is free software; you can redistribute it and/or modify it
008    under the terms of the GNU General Public License as published by the
009    Free Software Foundation; either version 2, or (at your option) any
010    later version.
011    
012    JavaNCSS is distributed in the hope that it will be useful, but WITHOUT
013    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
014    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
015    for more details.
016    
017    You should have received a copy of the GNU General Public License
018    along with JavaNCSS; see the file COPYING.  If not, write to
019    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
020    Boston, MA 02111-1307, USA.  */
021    
022    package javancss;
023    
024    /**
025     * Basic data class to store all metrics attached to a package.
026     *
027     * @author  Chr. Clemens Lee <clemens@kclee.com>
028     * @version $Id: PackageMetric.java 121 2009-01-17 22:19:45Z hboutemy $
029     */
030    public class PackageMetric extends Metric
031    {
032        public int classes    = 0;
033        public int functions  = 0;
034    
035        public PackageMetric()
036        {
037            super();
038        }
039    
040        public void clear()
041        {
042            super.clear();
043            classes   = 0;
044            functions = 0;
045        }
046    
047        public void add(PackageMetric pPackageMetric_) {
048            if (pPackageMetric_ == null) {
049                return;
050            }
051            classes    += pPackageMetric_.classes;
052            functions  += pPackageMetric_.functions;
053            ncss       += pPackageMetric_.ncss;
054    
055            javadocs   += pPackageMetric_.javadocs;
056            javadocsLn += pPackageMetric_.javadocsLn;
057            singleLn   += pPackageMetric_.singleLn;
058            multiLn    += pPackageMetric_.multiLn;
059        }
060    }