This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.
00001 // -*- C++ -*- 00002 // AID-GENERATED 00003 // ========================================================================= 00004 // This class was generated by AID - Abstract Interface Definition 00005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 00006 // ========================================================================= 00007 #ifndef AIDA_ICLOUD3D_H 00008 #define AIDA_ICLOUD3D_H 1 00009 00010 // This file is part of the AIDA library 00011 // Copyright (C) 2002 by the AIDA team. All rights reserved. 00012 // This library is free software and under the terms of the 00013 // GNU Library General Public License described in the LGPL.txt 00014 00015 #include <vector> 00016 00017 #include "AIDA/ICloud.h" 00018 00019 namespace AIDA { 00020 00021 class IHistogram3D; 00022 00030 class ICloud3D : virtual public ICloud { 00031 00032 public: 00034 virtual ~ICloud3D() { /* nop */; } 00035 00046 virtual bool fill(double x, double y, double z, double weight = 1.) = 0; 00047 00053 virtual double lowerEdgeX() const = 0; 00054 00060 virtual double lowerEdgeY() const = 0; 00061 00067 virtual double lowerEdgeZ() const = 0; 00068 00074 virtual double upperEdgeX() const = 0; 00075 00081 virtual double upperEdgeY() const = 0; 00082 00088 virtual double upperEdgeZ() const = 0; 00089 00107 virtual double valueX(int index) const = 0; 00108 00126 virtual double valueY(int index) const = 0; 00127 00145 virtual double valueZ(int index) const = 0; 00146 00164 virtual double weight(int index) const = 0; 00165 00171 virtual double meanX() const = 0; 00172 00178 virtual double meanY() const = 0; 00179 00185 virtual double meanZ() const = 0; 00186 00192 virtual double rmsX() const = 0; 00193 00199 virtual double rmsY() const = 0; 00200 00206 virtual double rmsZ() const = 0; 00207 00223 virtual bool convert(int nBinsX, double lowerEdgeX, double upperEdgeX, int nBinsY, double lowerEdgeY, double upperEdgeY, int nBinsZ, double lowerEdgeZ, double upperEdgeZ) = 0; 00224 00234 virtual bool convert(const std::vector<double> & binEdgesX, const std::vector<double> & binEdgesY, const std::vector<double> & binEdgesZ) = 0; 00235 00242 virtual const IHistogram3D & histogram() const = 0; 00243 00250 virtual bool fillHistogram(IHistogram3D & hist) const = 0; 00251 }; // class 00252 }; // namespace AIDA 00253 #endif /* ifndef AIDA_ICLOUD3D_H */