File indexing completed on 2025-04-19 09:09:52
0001 #ifndef ATOOLS_Org_Info_Key_inl_H
0002 #define ATOOLS_Org_Info_Key_inl_H
0003
0004 #include "ATOOLS/Org/Info_Key.H"
0005 #include "ATOOLS/Org/Integration_Info.H"
0006
0007 namespace ATOOLS {
0008
0009 inline si::code Info_Key::SetStatus(const si::code status) const
0010 { return p_info->SetStatus(m_valuekey,status); }
0011
0012 inline const std::string &Info_Key::Name() const
0013 { return m_name; }
0014
0015 inline const std::string &Info_Key::Info() const
0016 { return m_info; }
0017
0018 inline Double_Container &Info_Key::Doubles() const
0019 { return p_info->Doubles(m_valuekey); }
0020
0021 inline Vector_Container &Info_Key::Vectors() const
0022 { return p_info->Vectors(m_valuekey); }
0023
0024 inline si::code Info_Key::Status() const
0025 { return p_info->Status(m_valuekey); }
0026
0027 inline double Info_Key::Weight() const
0028 { return p_info->Weight(m_valuekey,m_weightkey); }
0029
0030 inline double Info_Key::Double(const size_t i) const
0031 { return p_info->Double(m_valuekey,i); }
0032
0033 inline ATOOLS::Vec4D Info_Key::Vector(const size_t i) const
0034 { return p_info->Vector(m_valuekey,i); }
0035
0036 inline bool Info_Key::Assigned() const
0037 { return p_info!=NULL; }
0038
0039 inline double &Info_Key::operator[](const size_t i)
0040 { return p_info->Double(m_valuekey,i); }
0041
0042 inline ATOOLS::Vec4D &Info_Key::operator()(const size_t i)
0043 { return p_info->Vector(m_valuekey,i); }
0044
0045 inline void Info_Key::operator<<(const double weight)
0046 { p_info->SetWeight(m_valuekey,m_weightkey,weight); }
0047
0048 inline Info_Key &Info_Key::operator=(const Info_Key &key)
0049 {
0050 for (size_t i=0;i<Doubles().size();++i) (*this)[i]=key.Double(i);
0051 for (size_t j=0;j<Vectors().size();++j) (*this)(j)=key.Vector(j);
0052 return *this;
0053 }
0054
0055 inline bool Info_Key::operator==(const Info_Key &key)
0056 {
0057 if (key.m_valuekey==m_valuekey && key.m_weightkey==m_weightkey) return true;
0058 return false;
0059 }
0060
0061 }
0062
0063 #endif