|
||||
File indexing completed on 2025-01-18 09:28:09
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_ITUPLE_H 0008 #define AIDA_ITUPLE_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 <string> 0016 #include <vector> 0017 0018 namespace AIDA { 0019 0020 class IAnnotation; 0021 class ICloud1D; 0022 class ICloud2D; 0023 class ICloud3D; 0024 class IEvaluator; 0025 class IFilter; 0026 class IHistogram1D; 0027 class IHistogram2D; 0028 class IHistogram3D; 0029 class IProfile1D; 0030 class IProfile2D; 0031 class ITupleEntry; 0032 0033 /** 0034 * User level interface to a Tuple. 0035 * 0036 * @author The AIDA team (http://aida.freehep.org/) 0037 * 0038 */ 0039 0040 class ITuple { 0041 0042 public: 0043 /// Destructor. 0044 virtual ~ITuple() { /* nop */; } 0045 0046 /** 0047 * Get the title of this ITuple. 0048 * @return The ITuple's title. 0049 * 0050 */ 0051 virtual std::string title() const = 0; 0052 0053 /** 0054 * Set the title of the ITuple. 0055 * @param title The new ITuple's title. 0056 * @return false If title cannot be changed. 0057 * 0058 */ 0059 virtual bool setTitle(const std::string & title) = 0; 0060 0061 /** 0062 * Get the IAnnotation corresponding to this ITuple. 0063 * @return The ITuple's IAnnotation. 0064 * 0065 */ 0066 virtual IAnnotation & annotation() = 0; 0067 0068 virtual const IAnnotation & annotation() const = 0; 0069 0070 /** 0071 * Fill a given column with a double. 0072 * @param column The column's index within the ITuple. 0073 * @param value The double. 0074 * @return false If the column is of the wrong type. 0075 * 0076 */ 0077 virtual bool fill(int column, double value) = 0; 0078 0079 /** 0080 * Fill a given column with a float. 0081 * @param column The column's index within the ITuple. 0082 * @param value The float. 0083 * @return false If the column is of the wrong type. 0084 * 0085 */ 0086 virtual bool fill(int column, float value) = 0; 0087 0088 /** 0089 * Fill a given column with an integer. 0090 * @param column The column's index within the ITuple. 0091 * @param value The integer. 0092 * @return false If the column is of the wrong type. 0093 * 0094 */ 0095 virtual bool fill(int column, int value) = 0; 0096 0097 /** 0098 * Fill a given column with a short. 0099 * @param column The column's index within the ITuple. 0100 * @param value The short. 0101 * @return false If the column is of the wrong type. 0102 * 0103 */ 0104 virtual bool fill(int column, short value) = 0; 0105 0106 /** 0107 * Fill a given column with a long. 0108 * @param column The column's index within the ITuple. 0109 * @param value The long. 0110 * @return false If the column is of the wrong type. 0111 * 0112 */ 0113 virtual bool fill(int column, long value) = 0; 0114 0115 /** 0116 * Fill a given column with a char. 0117 * @param column The column's index within the ITuple. 0118 * @param value The char. 0119 * @return false If the column is of the wrong type. 0120 * 0121 */ 0122 virtual bool fill(int column, char value) = 0; 0123 0124 /** 0125 * Fill a given column with a boolean. 0126 * @param column The column's index within the ITuple. 0127 * @param value The boolean. 0128 * @return false If the column is of the wrong type. 0129 * 0130 */ 0131 virtual bool fill(int column, bool value) = 0; 0132 0133 /** 0134 * Fill a given column with a string. 0135 * @param column The column's index within the ITuple. 0136 * @param value The string. 0137 * @return false If the column is of the wrong type. 0138 * 0139 */ 0140 virtual bool fill(int column, const std::string & value) = 0; 0141 0142 /** 0143 * Fill a given column with an object. 0144 * @param column The column's index within the ITuple. 0145 * @param value The object. 0146 * @return false If the column is of the wrong type. 0147 * 0148 */ 0149 virtual bool fill(int column, const ITupleEntry & value) = 0; 0150 0151 /** 0152 * Fill all the columns at once with doubles. 0153 * @param values The array of doubles. 0154 * @return false If any column is not of type double or if 0155 * the array has the wrong dimension. 0156 * 0157 */ 0158 virtual bool fill(const std::vector<double> & values) = 0; 0159 0160 /** 0161 * Fill all the columns at once with floats. 0162 * @param values The array of floats. 0163 * @return false If any column is not of type float or if 0164 * the array has the wrong dimension. 0165 * 0166 */ 0167 virtual bool fill(const std::vector<float> & values) = 0; 0168 0169 /** 0170 * Add the current row to the ITuple. This method should be called after 0171 * fill has been called for the columns; unfilled columns will be filled 0172 * with their default value. 0173 * @return false When the ITuple runs out of storage space. 0174 * 0175 */ 0176 virtual bool addRow() = 0; 0177 0178 /** 0179 * Clear the current(not yet added) row. 0180 * 0181 */ 0182 virtual void resetRow() = 0; 0183 0184 /** 0185 * Reset the ITuple. All the rows are reset. 0186 * The ITuple is as just created. 0187 * 0188 */ 0189 virtual void reset() = 0; 0190 0191 /** 0192 * Get the number of rows currently filled in the ITuple. 0193 * @return The number of rows. -1 if empty or if it cannot be determined. 0194 * 0195 */ 0196 virtual int rows() const = 0; 0197 0198 /** 0199 * Positions the read cursor immediately before the first row. 0200 * 0201 */ 0202 virtual void start() = 0; 0203 0204 /** 0205 * Skips a given number of rows. 0206 * @param rows The number of rows to skip. 0207 * @return false If rows is less than zero or 0208 * if it is not possible to perform the jump. 0209 * 0210 */ 0211 virtual bool skip(int rows) = 0; 0212 0213 /** 0214 * Positions the cursor at the next row. 0215 * @return false if there is no next row. 0216 * 0217 */ 0218 virtual bool next() = 0; 0219 0220 /** 0221 * Position the cursor at a give row. 0222 * @param rowIndex The row where the cursor has to be positioned. 0223 * @return false If the cursor cannot be positioned 0224 * at the give row. 0225 * 0226 */ 0227 virtual bool setRow(int rowIndex) = 0; 0228 0229 /** 0230 * Get the index within the ITuple of a given column. 0231 * @param name The colum's name. 0232 * @return The corresponding column's index. Note: in C++ -1 may 0233 * be returned if the column does not exist. 0234 */ 0235 virtual int findColumn(const std::string & name) const = 0; 0236 0237 /** 0238 * Get the double stored in a given column at the current cursor's position. 0239 * @param column The column's index within the ITuple. 0240 * @return The double. 0241 * 0242 */ 0243 virtual double getDouble(int column) const = 0; 0244 0245 /** 0246 * Get the float stored in a given column at the current cursor's position. 0247 * @param column The column's index within the ITuple. 0248 * @return The float. 0249 * 0250 */ 0251 virtual float getFloat(int column) const = 0; 0252 0253 /** 0254 * Get the integer stored in a given column at the current cursor's position. 0255 * @param column The column's index within the ITuple. 0256 * @return The integer. 0257 * 0258 */ 0259 virtual int getInt(int column) const = 0; 0260 0261 /** 0262 * Get the short stored in a given column at the current cursor's position. 0263 * @param column The column's index within the ITuple. 0264 * @return The short. 0265 * 0266 */ 0267 virtual short getShort(int column) const = 0; 0268 0269 /** 0270 * Get the long stored in a given column at the current cursor's position. 0271 * @param column The column's index within the ITuple. 0272 * @return The long. 0273 * 0274 */ 0275 virtual long getLong(int column) const = 0; 0276 0277 /** 0278 * Get the character stored in a given column at the current cursor's position. 0279 * @param column The column's index within the ITuple. 0280 * @return The character. 0281 * 0282 */ 0283 virtual char getChar(int column) const = 0; 0284 0285 /** 0286 * Get the boolean stored in a given column at the current cursor's position. 0287 * @param column The column's index within the ITuple. 0288 * @return The boolean. 0289 * 0290 */ 0291 virtual bool getBoolean(int column) const = 0; 0292 0293 /** 0294 * Get the string stored in a given column at the current cursor's position. 0295 * @param column The column's index within the ITuple. 0296 * @return The string. 0297 * 0298 */ 0299 virtual std::string getString(int column) const = 0; 0300 0301 /** 0302 * Get the object stored in a given column at the current cursor's position. 0303 * @param column The column's index within the ITuple. 0304 * @return The object. 0305 * 0306 */ 0307 virtual const ITupleEntry * getObject(int column) const = 0; 0308 0309 /** 0310 * Return method for tuple variables of type ITuple for a given column. 0311 * This method can be used in order to fill a tuple variable in the master tuple. 0312 * @param column The column's index. 0313 * @return The ITuple representing the structure of this column. 0314 * 0315 */ 0316 virtual const ITuple * getTuple(int column) const = 0; 0317 0318 virtual ITuple * getTuple(int column) = 0; 0319 0320 /** 0321 * Get the number of columns in the ITuple 0322 * @return The number of columns. 0323 * 0324 */ 0325 virtual int columns() const = 0; 0326 0327 /** 0328 * Get the name of a column from its index. 0329 * @param column The column's index. 0330 * @return The column's name. 0331 * 0332 */ 0333 virtual std::string columnName(int column) const = 0; 0334 0335 /** 0336 * Get the names of all the columns. 0337 * @return The column names. 0338 * 0339 */ 0340 virtual std::vector<std::string> columnNames() const = 0; 0341 0342 /** 0343 * Get the type of a give column. 0344 * @param column The column's type. 0345 * @return The column's Class. 0346 * 0347 */ 0348 virtual std::string columnType(int column) const = 0; 0349 0350 /** 0351 * Get the types of all the columns. 0352 * @return The column Classes. 0353 * 0354 */ 0355 virtual std::vector<std::string> columnTypes() const = 0; 0356 0357 /** 0358 * Get the minimum value of a given column (if it can be converted to a double). 0359 * @param column The column's index. 0360 * @return The column's minimum value. In Java Double.NaN might be returned. 0361 * 0362 */ 0363 virtual double columnMin(int column) const = 0; 0364 0365 /** 0366 * Get the maximum value of a given column (if it can be converted to a double). 0367 * @param column The column's index. 0368 * @return The column's maximum value. In Java Double.NaN might be returned. 0369 * 0370 */ 0371 virtual double columnMax(int column) const = 0; 0372 0373 /** 0374 * Get the mean value of a given column (if it can be converted to a double). 0375 * @param column The column's index. 0376 * @return The column's mean value. In Java Double.NaN might be returned. 0377 * 0378 */ 0379 virtual double columnMean(int column) const = 0; 0380 0381 /** 0382 * Get the RMS of a given column (if it can be converted to a double). 0383 * @param column The column's index. 0384 * @return The column's RMS. In Java Double.NaN might be returned. 0385 * 0386 */ 0387 virtual double columnRms(int column) const = 0; 0388 0389 /** 0390 * Fill an IHistogram1D from the tuple. 0391 * @param histogram The histogram to fill. 0392 * @param evaluatorX The evaluator used to compute the value 0393 * to be filled in the histogram. The value is computed 0394 * from the current row of the tuple. 0395 * @return false If something goes wrong. 0396 * 0397 */ 0398 virtual bool project(IHistogram1D & histogram, IEvaluator & evaluatorX) = 0; 0399 0400 /** 0401 * Fill an IHistogram1D from the tuple. 0402 * @param histogram The histogram to fill. 0403 * @param evaluatorX The evaluator used to compute the value 0404 * to be filled in the histogram. The value is computed 0405 * from the current row of the tuple. 0406 * @param filter The filter object used to accept or not the current row. 0407 * If rejected, the histogram is not filled. 0408 * @return false If something goes wrong. 0409 * 0410 */ 0411 virtual bool project(IHistogram1D & histogram, IEvaluator & evaluatorX, IFilter & filter) = 0; 0412 0413 /** 0414 * Fill an IHistogram1D from the tuple. 0415 * @param histogram The histogram to fill. 0416 * @param evaluatorX The evaluator used to compute the value 0417 * to be filled in the histogram. The value is computed 0418 * from the current row of the tuple. 0419 * @param weight The evaluator which determines the weight which is used during the filling. 0420 * @return false If something goes wrong. 0421 * 0422 */ 0423 virtual bool project(IHistogram1D & histogram, IEvaluator & evaluatorX, IEvaluator & weight) = 0; 0424 0425 /** 0426 * Fill an IHistogram1D from the tuple. 0427 * @param histogram The histogram to fill. 0428 * @param evaluatorX The evaluator used to compute the value 0429 * to be filled in the histogram. The value is computed 0430 * from the current row of the tuple. 0431 * @param filter The filter object used to accept or not the current row. 0432 * If rejected, the histogram is not filled. 0433 * @param weight The evaluator which determines the weight which is used during the filling. 0434 * @return false If something goes wrong. 0435 * 0436 */ 0437 virtual bool project(IHistogram1D & histogram, IEvaluator & evaluatorX, IFilter & filter, IEvaluator & weight) = 0; 0438 0439 /** 0440 * Fill an IHistogram2D from the tuple. 0441 * @param histogram The histogram to fill. 0442 * @param evaluatorX The evaluator used to compute the value 0443 * to be filled in the histogram along the x axis. 0444 * The value is computed from the current row of the tuple. 0445 * @param evaluatorY The evaluator used to compute the value 0446 * to be filled in the histogram along the y axis. 0447 * The value is computed from the current row of the tuple. 0448 * @return false If something goes wrong. 0449 * 0450 */ 0451 virtual bool project(IHistogram2D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY) = 0; 0452 0453 /** 0454 * Fill an IHistogram2D from the tuple. 0455 * @param histogram The histogram to fill. 0456 * @param evaluatorX The evaluator used to compute the value 0457 * to be filled in the histogram along the x axis. 0458 * The value is computed from the current row of the tuple. 0459 * @param evaluatorY The evaluator used to compute the value 0460 * to be filled in the histogram along the y axis. 0461 * The value is computed from the current row of the tuple. 0462 * @param filter The filter object used to accept or not the current row. 0463 * If rejected, the histogram is not filled. 0464 * @return false If something goes wrong. 0465 * 0466 */ 0467 virtual bool project(IHistogram2D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter) = 0; 0468 0469 /** 0470 * Fill an IHistogram2D from the tuple. 0471 * @param histogram The histogram to fill. 0472 * @param evaluatorX The evaluator used to compute the value 0473 * to be filled in the histogram along the x axis. 0474 * The value is computed from the current row of the tuple. 0475 * @param evaluatorY The evaluator used to compute the value 0476 * to be filled in the histogram along the y axis. 0477 * The value is computed from the current row of the tuple. 0478 * @param weight The evaluator which determines the weight which is used during the filling. 0479 * @return false If something goes wrong. 0480 * 0481 */ 0482 virtual bool project(IHistogram2D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & weight) = 0; 0483 0484 /** 0485 * Fill an IHistogram2D from the tuple. 0486 * @param histogram The histogram to fill. 0487 * @param evaluatorX The evaluator used to compute the value 0488 * to be filled in the histogram along the x axis. 0489 * The value is computed from the current row of the tuple. 0490 * @param evaluatorY The evaluator used to compute the value 0491 * to be filled in the histogram along the y axis. 0492 * The value is computed from the current row of the tuple. 0493 * @param filter The filter object used to accept or not the current row. 0494 * If rejected, the histogram is not filled. 0495 * @param weight The evaluator which determines the weight which is used during the filling. 0496 * @return false If something goes wrong. 0497 * 0498 */ 0499 virtual bool project(IHistogram2D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter, IEvaluator & weight) = 0; 0500 0501 /** 0502 * Fill an IHistogram3D from the tuple. 0503 * @param histogram The histogram to fill. 0504 * @param evaluatorX The evaluator used to compute the value 0505 * to be filled in the histogram along the x axis. 0506 * The value is computed from the current row of the tuple. 0507 * @param evaluatorY The evaluator used to compute the value 0508 * to be filled in the histogram along the y axis. 0509 * The value is computed from the current row of the tuple. 0510 * @param evaluatorZ The evaluator used to compute the value 0511 * to be filled in the histogram along the z axis. 0512 * The value is computed from the current row of the tuple. 0513 * @return false If something goes wrong. 0514 * 0515 */ 0516 virtual bool project(IHistogram3D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ) = 0; 0517 0518 /** 0519 * Fill an IHistogram3D from the tuple. 0520 * @param histogram The histogram to fill. 0521 * @param evaluatorX The evaluator used to compute the value 0522 * to be filled in the histogram along the x axis. 0523 * The value is computed from the current row of the tuple. 0524 * @param evaluatorY The evaluator used to compute the value 0525 * to be filled in the histogram along the y axis. 0526 * The value is computed from the current row of the tuple. 0527 * @param evaluatorZ The evaluator used to compute the value 0528 * to be filled in the histogram along the z axis. 0529 * The value is computed from the current row of the tuple. 0530 * @param filter The filter object used to accept or not the current row. 0531 * If rejected, the histogram is not filled. 0532 * @return false If something goes wrong. 0533 * 0534 */ 0535 virtual bool project(IHistogram3D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter) = 0; 0536 0537 /** 0538 * Fill an IHistogram3D from the tuple. 0539 * @param histogram The histogram to fill. 0540 * @param evaluatorX The evaluator used to compute the value 0541 * to be filled in the histogram along the x axis. 0542 * The value is computed from the current row of the tuple. 0543 * @param evaluatorY The evaluator used to compute the value 0544 * to be filled in the histogram along the y axis. 0545 * The value is computed from the current row of the tuple. 0546 * @param evaluatorZ The evaluator used to compute the value 0547 * to be filled in the histogram along the z axis. 0548 * The value is computed from the current row of the tuple. 0549 * @param weight The evaluator which determines the weight which is used during the filling. 0550 * @return false If something goes wrong. 0551 * 0552 */ 0553 virtual bool project(IHistogram3D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IEvaluator & weight) = 0; 0554 0555 /** 0556 * Fill an IHistogram3D from the tuple. 0557 * @param histogram The histogram to fill. 0558 * @param evaluatorX The evaluator used to compute the value 0559 * to be filled in the histogram along the x axis. 0560 * The value is computed from the current row of the tuple. 0561 * @param evaluatorY The evaluator used to compute the value 0562 * to be filled in the histogram along the y axis. 0563 * The value is computed from the current row of the tuple. 0564 * @param evaluatorZ The evaluator used to compute the value 0565 * to be filled in the histogram along the z axis. 0566 * The value is computed from the current row of the tuple. 0567 * @param filter The filter object used to accept or not the current row. 0568 * If rejected, the histogram is not filled. 0569 * @param weight The evaluator which determines the weight which is used during the filling. 0570 * @return false If something goes wrong. 0571 * 0572 */ 0573 virtual bool project(IHistogram3D & histogram, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter, IEvaluator & weight) = 0; 0574 0575 /** 0576 * Fill an ICloud1D from the tuple. 0577 * @param cloud The cloud to fill. 0578 * @param evaluatorX The evaluator used to compute the value 0579 * to be filled in the cloud. The value is computed 0580 * from the current row of the tuple. 0581 * @return false If something goes wrong. 0582 * 0583 */ 0584 virtual bool project(ICloud1D & cloud, IEvaluator & evaluatorX) = 0; 0585 0586 /** 0587 * Fill an ICloud1D from the tuple. 0588 * @param cloud The cloud to fill. 0589 * @param evaluatorX The evaluator used to compute the value 0590 * to be filled in the cloud. The value is computed 0591 * from the current row of the tuple. 0592 * @param filter The filter object used to accept or not the current row. 0593 * If rejected, the cloud is not filled. 0594 * @return false If something goes wrong. 0595 * 0596 */ 0597 virtual bool project(ICloud1D & cloud, IEvaluator & evaluatorX, IFilter & filter) = 0; 0598 0599 /** 0600 * Fill an ICloud1D from the tuple. 0601 * @param cloud The cloud to fill. 0602 * @param evaluatorX The evaluator used to compute the value 0603 * to be filled in the cloud. The value is computed 0604 * from the current row of the tuple. 0605 * @param weight The evaluator which determines the weight which is used during the filling. 0606 * @return false If something goes wrong. 0607 * 0608 */ 0609 virtual bool project(ICloud1D & cloud, IEvaluator & evaluatorX, IEvaluator & weight) = 0; 0610 0611 /** 0612 * Fill an ICloud1D from the tuple. 0613 * @param cloud The cloud to fill. 0614 * @param evaluatorX The evaluator used to compute the value 0615 * to be filled in the cloud. The value is computed 0616 * from the current row of the tuple. 0617 * @param filter The filter object used to accept or not the current row. 0618 * If rejected, the cloud is not filled. 0619 * @param weight The evaluator which determines the weight which is used during the filling. 0620 * @return false If something goes wrong. 0621 * 0622 */ 0623 virtual bool project(ICloud1D & cloud, IEvaluator & evaluatorX, IFilter & filter, IEvaluator & weight) = 0; 0624 0625 /** 0626 * Fill an ICloud2D from the tuple. 0627 * @param cloud The cloud to fill. 0628 * @param evaluatorX The evaluator used to compute the value 0629 * to be filled in the cloud along the x axis. 0630 * The value is computed from the current row of the tuple. 0631 * @param evaluatorY The evaluator used to compute the value 0632 * to be filled in the cloud along the y axis. 0633 * The value is computed from the current row of the tuple. 0634 * @return false If something goes wrong. 0635 * 0636 */ 0637 virtual bool project(ICloud2D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY) = 0; 0638 0639 /** 0640 * Fill an ICloud2D from the tuple. 0641 * @param cloud The cloud to fill. 0642 * @param evaluatorX The evaluator used to compute the value 0643 * to be filled in the cloud along the x axis. 0644 * The value is computed from the current row of the tuple. 0645 * @param evaluatorY The evaluator used to compute the value 0646 * to be filled in the cloud along the y axis. 0647 * The value is computed from the current row of the tuple. 0648 * @param filter The filter object used to accept or not the current row. 0649 * If rejected, the cloud is not filled. 0650 * @return false If something goes wrong. 0651 * 0652 */ 0653 virtual bool project(ICloud2D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter) = 0; 0654 0655 /** 0656 * Fill an ICloud2D from the tuple. 0657 * @param cloud The cloud to fill. 0658 * @param evaluatorX The evaluator used to compute the value 0659 * to be filled in the cloud along the x axis. 0660 * The value is computed from the current row of the tuple. 0661 * @param evaluatorY The evaluator used to compute the value 0662 * to be filled in the cloud along the y axis. 0663 * The value is computed from the current row of the tuple. 0664 * @param weight The evaluator which determines the weight which is used during the filling. 0665 * @return false If something goes wrong. 0666 * 0667 */ 0668 virtual bool project(ICloud2D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & weight) = 0; 0669 0670 /** 0671 * Fill an ICloud2D from the tuple. 0672 * @param cloud The cloud to fill. 0673 * @param evaluatorX The evaluator used to compute the value 0674 * to be filled in the cloud along the x axis. 0675 * The value is computed from the current row of the tuple. 0676 * @param evaluatorY The evaluator used to compute the value 0677 * to be filled in the cloud along the y axis. 0678 * The value is computed from the current row of the tuple. 0679 * @param filter The filter object used to accept or not the current row. 0680 * If rejected, the cloud is not filled. 0681 * @param weight The evaluator which determines the weight which is used during the filling. 0682 * @return false If something goes wrong. 0683 * 0684 */ 0685 virtual bool project(ICloud2D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter, IEvaluator & weight) = 0; 0686 0687 /** 0688 * Fill an ICloud3D from the tuple. 0689 * @param cloud The cloud to fill. 0690 * @param evaluatorX The evaluator used to compute the value 0691 * to be filled in the cloud along the x axis. 0692 * The value is computed from the current row of the tuple. 0693 * @param evaluatorY The evaluator used to compute the value 0694 * to be filled in the cloud along the y axis. 0695 * The value is computed from the current row of the tuple. 0696 * @param evaluatorZ The evaluator used to compute the value 0697 * to be filled in the cloud along the z axis. 0698 * The value is computed from the current row of the tuple. 0699 * @return false If something goes wrong. 0700 * 0701 */ 0702 virtual bool project(ICloud3D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ) = 0; 0703 0704 /** 0705 * Fill an ICloud3D from the tuple. 0706 * @param cloud The cloud to fill. 0707 * @param evaluatorX The evaluator used to compute the value 0708 * to be filled in the cloud along the x axis. 0709 * The value is computed from the current row of the tuple. 0710 * @param evaluatorY The evaluator used to compute the value 0711 * to be filled in the cloud along the y axis. 0712 * The value is computed from the current row of the tuple. 0713 * @param evaluatorZ The evaluator used to compute the value 0714 * to be filled in the cloud along the z axis. 0715 * The value is computed from the current row of the tuple. 0716 * @param filter The filter object used to accept or not the current row. 0717 * If rejected, the cloud is not filled. 0718 * @return false If something goes wrong. 0719 * 0720 */ 0721 virtual bool project(ICloud3D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter) = 0; 0722 0723 /** 0724 * Fill an ICloud3D from the tuple. 0725 * @param cloud The cloud to fill. 0726 * @param evaluatorX The evaluator used to compute the value 0727 * to be filled in the cloud along the x axis. 0728 * The value is computed from the current row of the tuple. 0729 * @param evaluatorY The evaluator used to compute the value 0730 * to be filled in the cloud along the y axis. 0731 * The value is computed from the current row of the tuple. 0732 * @param evaluatorZ The evaluator used to compute the value 0733 * to be filled in the cloud along the z axis. 0734 * The value is computed from the current row of the tuple. 0735 * @param weight The evaluator which determines the weight which is used during the filling. 0736 * @return false If something goes wrong. 0737 * 0738 */ 0739 virtual bool project(ICloud3D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IEvaluator & weight) = 0; 0740 0741 /** 0742 * Fill an ICloud3D from the tuple. 0743 * @param cloud The cloud to fill. 0744 * @param evaluatorX The evaluator used to compute the value 0745 * to be filled in the cloud along the x axis. 0746 * The value is computed from the current row of the tuple. 0747 * @param evaluatorY The evaluator used to compute the value 0748 * to be filled in the cloud along the y axis. 0749 * The value is computed from the current row of the tuple. 0750 * @param evaluatorZ The evaluator used to compute the value 0751 * to be filled in the cloud along the z axis. 0752 * The value is computed from the current row of the tuple. 0753 * @param filter The filter object used to accept or not the current row. 0754 * If rejected, the cloud is not filled. 0755 * @param weight The evaluator which determines the weight which is used during the filling. 0756 * @return false If something goes wrong. 0757 * 0758 */ 0759 virtual bool project(ICloud3D & cloud, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter, IEvaluator & weight) = 0; 0760 0761 /** 0762 * Fill an IProfile1D from the tuple. 0763 * @param profile The profile to fill. 0764 * @param evaluatorX The evaluator used to compute the value 0765 * to be filled in the profile along the x axis. 0766 * The value is computed from the current row of the tuple. 0767 * @param evaluatorY The evaluator used to compute the value 0768 * to be filled in the profile along the y axis. 0769 * The value is computed from the current row of the tuple. 0770 * @return false If something goes wrong. 0771 * 0772 */ 0773 virtual bool project(IProfile1D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY) = 0; 0774 0775 /** 0776 * Fill an IProfile1D from the tuple. 0777 * @param profile The profile to fill. 0778 * @param evaluatorX The evaluator used to compute the value 0779 * to be filled in the profile along the x axis. 0780 * The value is computed from the current row of the tuple. 0781 * @param evaluatorY The evaluator used to compute the value 0782 * to be filled in the profile along the y axis. 0783 * The value is computed from the current row of the tuple. 0784 * @param filter The filter object used to accept or not the current row. 0785 * If rejected, the profile is not filled. 0786 * @return false If something goes wrong. 0787 * 0788 */ 0789 virtual bool project(IProfile1D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter) = 0; 0790 0791 /** 0792 * Fill an IProfile1D from the tuple. 0793 * @param profile The profile to fill. 0794 * @param evaluatorX The evaluator used to compute the value 0795 * to be filled in the profile along the x axis. 0796 * The value is computed from the current row of the tuple. 0797 * @param evaluatorY The evaluator used to compute the value 0798 * to be filled in the profile along the y axis. 0799 * The value is computed from the current row of the tuple. 0800 * @param weight The evaluator which determines the weight which is used during the filling. 0801 * @return false If something goes wrong. 0802 * 0803 */ 0804 virtual bool project(IProfile1D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & weight) = 0; 0805 0806 /** 0807 * Fill an IProfile1D from the tuple. 0808 * @param profile The profile to fill. 0809 * @param evaluatorX The evaluator used to compute the value 0810 * to be filled in the profile along the x axis. 0811 * The value is computed from the current row of the tuple. 0812 * @param evaluatorY The evaluator used to compute the value 0813 * to be filled in the profile along the y axis. 0814 * The value is computed from the current row of the tuple. 0815 * @param filter The filter object used to accept or not the current row. 0816 * If rejected, the profile is not filled. 0817 * @param weight The evaluator which determines the weight which is used during the filling. 0818 * @return false If something goes wrong. 0819 * 0820 */ 0821 virtual bool project(IProfile1D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IFilter & filter, IEvaluator & weight) = 0; 0822 0823 /** 0824 * Fill an IProfile2D from the tuple. 0825 * @param profile The profile to fill. 0826 * @param evaluatorX The evaluator used to compute the value 0827 * to be filled in the profile along the x axis. 0828 * The value is computed from the current row of the tuple. 0829 * @param evaluatorY The evaluator used to compute the value 0830 * to be filled in the profile along the y axis. 0831 * The value is computed from the current row of the tuple. 0832 * @param evaluatorZ The evaluator used to compute the value 0833 * to be filled in the profile along the z axis. 0834 * The value is computed from the current row of the tuple. 0835 * @return false If something goes wrong. 0836 * 0837 */ 0838 virtual bool project(IProfile2D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ) = 0; 0839 0840 /** 0841 * Fill an IProfile2D from the tuple. 0842 * @param profile The profile to fill. 0843 * @param evaluatorX The evaluator used to compute the value 0844 * to be filled in the profile along the x axis. 0845 * The value is computed from the current row of the tuple. 0846 * @param evaluatorY The evaluator used to compute the value 0847 * to be filled in the profile along the y axis. 0848 * The value is computed from the current row of the tuple. 0849 * @param evaluatorZ The evaluator used to compute the value 0850 * to be filled in the profile along the z axis. 0851 * The value is computed from the current row of the tuple. 0852 * @param filter The filter object used to accept or not the current row. 0853 * If rejected, the profile is not filled. 0854 * @return false If something goes wrong. 0855 * 0856 */ 0857 virtual bool project(IProfile2D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter) = 0; 0858 0859 /** 0860 * Fill an IProfile2D from the tuple. 0861 * @param profile The profile to fill. 0862 * @param evaluatorX The evaluator used to compute the value 0863 * to be filled in the profile along the x axis. 0864 * The value is computed from the current row of the tuple. 0865 * @param evaluatorY The evaluator used to compute the value 0866 * to be filled in the profile along the y axis. 0867 * The value is computed from the current row of the tuple. 0868 * @param evaluatorZ The evaluator used to compute the value 0869 * to be filled in the profile along the z axis. 0870 * The value is computed from the current row of the tuple. 0871 * @param weight The evaluator which determines the weight which is used during the filling. 0872 * @return false If something goes wrong. 0873 * 0874 */ 0875 virtual bool project(IProfile2D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IEvaluator & weight) = 0; 0876 0877 /** 0878 * Fill an IProfile2D from the tuple. 0879 * @param profile The profile to fill. 0880 * @param evaluatorX The evaluator used to compute the value 0881 * to be filled in the profile along the x axis. 0882 * The value is computed from the current row of the tuple. 0883 * @param evaluatorY The evaluator used to compute the value 0884 * to be filled in the profile along the y axis. 0885 * The value is computed from the current row of the tuple. 0886 * @param evaluatorZ The evaluator used to compute the value 0887 * to be filled in the profile along the z axis. 0888 * The value is computed from the current row of the tuple. 0889 * @param filter The filter object used to accept or not the current row. 0890 * If rejected, the profile is not filled. 0891 * @param weight The evaluator which determines the weight which is used during the filling. 0892 * @return false If something goes wrong. 0893 * 0894 */ 0895 virtual bool project(IProfile2D & profile, IEvaluator & evaluatorX, IEvaluator & evaluatorY, IEvaluator & evaluatorZ, IFilter & filter, IEvaluator & weight) = 0; 0896 0897 /** 0898 * See IManagedObject for a description. 0899 * @param className The name of the class to cast on. 0900 * @return The right pointer. Return 0 if failure. 0901 */ 0902 virtual void * cast(const std::string & className) const = 0; 0903 }; // class 0904 } // namespace AIDA 0905 #endif /* ifndef AIDA_ITUPLE_H */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |