Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:51:18

0001 //
0002 // NOTE:  This file was automatically generated from UTM library via import_utm.pl
0003 // DIRECT EDITS MIGHT BE LOST.
0004 //
0005 /**
0006  * @author      Takashi Matsushita
0007  * Created:     12 Mar 2015
0008  */
0009 
0010 #ifndef tmEventSetup_L1TUtmAlgorithm_hh
0011 #define tmEventSetup_L1TUtmAlgorithm_hh
0012 
0013 #include <set>
0014 #include <string>
0015 #include <vector>
0016 #include "CondFormats/Serialization/interface/Serializable.h"
0017 
0018 /**
0019  *  This class implements data structure for Algorithm
0020  */
0021 class L1TUtmAlgorithm {
0022 public:
0023   L1TUtmAlgorithm()
0024       : name_(),
0025         expression_(),
0026         expression_in_condition_(),
0027         rpn_vector_(),
0028         index_(),
0029         module_id_(),
0030         module_index_(),
0031         version(0){};
0032 
0033   virtual ~L1TUtmAlgorithm() = default;
0034 
0035   /** set rpn_vector_ */
0036   void setRpnVector(const std::vector<std::string>& x) { rpn_vector_ = x; };
0037 
0038   /** get algorithm name */
0039   const std::string& getName() const { return name_; };
0040 
0041   /** get algorithm expression in grammar */
0042   const std::string& getExpression() const { return expression_; };
0043 
0044   /** get algorithm expression in condition */
0045   const std::string& getExpressionInCondition() const { return expression_in_condition_; };
0046 
0047   /** get reverse polish notion of algorithm expression in condition */
0048   const std::vector<std::string>& getRpnVector() const { return rpn_vector_; };
0049 
0050   /** get algorithm index */
0051   unsigned int getIndex() const { return index_; };
0052 
0053   /** get module id */
0054   unsigned int getModuleId() const { return module_id_; };
0055 
0056   /** get module index */
0057   unsigned int getModuleIndex() const { return module_index_; };
0058 
0059 protected:
0060   std::string name_;                    /**< name of algorithm */
0061   std::string expression_;              /**< algorithm expression in grammar */
0062   std::string expression_in_condition_; /**< algorithm expression in condition */
0063   std::vector<std::string> rpn_vector_; /**< reverse polish notation of algorithm expression in condition */
0064   unsigned int index_;                  /**< index of algorithm (global) */
0065   unsigned int module_id_;              /**< module id */
0066   unsigned int module_index_;           /**< index of algorithm in module (local to module id) */
0067   unsigned int version;
0068 
0069   COND_SERIALIZABLE;
0070 };
0071 
0072 #endif  // tmEventSetup_L1TUtmAlgorithm_hh