Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:28:08

0001 // -*- C++ -*-
0002 // AID-GENERATED
0003 // =========================================================================
0004 // This class was generated by AID - Abstract Interface Definition          
0005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 
0006 // =========================================================================
0007 #ifndef AIDA_ICLOUD_H
0008 #define AIDA_ICLOUD_H 1
0009 
0010 //  This file is part of the AIDA library
0011 //  Copyright (C) 2002 by the AIDA team.  All rights reserved.
0012 //  This library is free software and under the terms of the
0013 //  GNU Library General Public License described in the LGPL.txt 
0014 
0015 #include "AIDA/IBaseHistogram.h"
0016 
0017 namespace AIDA {
0018 
0019 /**
0020  * User level interface to a Cloud.
0021  * A Cloud is an unbinned collection of points. It can be used to
0022  * represent scatter plots or dynamically rebinnable histograms.
0023  * If they number of entries in the cloud exceeds some threshold 
0024  * they may be automatically converted to a binned histogram.
0025  * 
0026  * @author The AIDA team (http://aida.freehep.org/)
0027  *
0028  */
0029 
0030 class ICloud : virtual public IBaseHistogram {
0031 
0032 public: 
0033     /// Destructor.
0034     virtual ~ICloud() { /* nop */; }
0035 
0036     /**
0037      * Get the sum of weights of all the entries.
0038      * @return The sum of the weights of all the entries.
0039      *
0040      */
0041     virtual double sumOfWeights() const = 0;
0042 
0043     /**
0044      * Convert the ICloud to an IHistogram using the default number of bins.
0045      * @return false If the ICloud has already been converted.
0046      *
0047      */
0048     virtual bool convertToHistogram() = 0;
0049 
0050     /**
0051      * Check if the ICloud has been converted to an IHistogram.
0052      * @return <code>true</code> if it has been converted.
0053      *
0054      */
0055     virtual bool isConverted() const = 0;
0056 
0057     /**
0058      * Get the number of entries after which the cloud will be converted to an IHistogram.
0059      * @return The number of entries.
0060      *
0061      */
0062     virtual int maxEntries() const = 0;
0063 
0064     /**
0065      * Scale the weights by a given factor.
0066      * @param scaleFactor The scale factor.
0067      * @return false If a non-positive scale factor is provided.
0068      *
0069      */
0070     virtual bool scale(double scaleFactor) = 0;
0071 }; // class
0072 } // namespace AIDA
0073 #endif /* ifndef AIDA_ICLOUD_H */