diff --git a/inc/LauAbsKMatrixProdComp.hh b/inc/LauAbsKMatrixProdComp.hh new file mode 100644 index 0000000..c21c01b --- /dev/null +++ b/inc/LauAbsKMatrixProdComp.hh @@ -0,0 +1,65 @@ + +/* +Copyright 2023 University of Warwick + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/* +Laura++ package authors: +John Back +Paul Harrison +Thomas Latham +*/ + +/*! \file LauAbsKMatrixProdComp.hh + \brief File containing declaration of LauAbsKMatrixProdComp class. +*/ + +/*! \class LauAbsKMatrixProdComp + \brief Abstract class for defining a component of the K-matrix production vector + + Abstract class for defining a component of the K-matrix production vector +*/ + +#ifndef LAU_ABS_KMATRIX_PROD_COMP +#define LAU_ABS_KMATRIX_PROD_COMP + +#include "LauAbsResonance.hh" + +class LauKMatrixPropagator; + +class LauAbsKMatrixProdComp : public LauAbsResonance { + + public: + //! Constructor (for use by K-matrix components) + /*! + \param [in] compName the name of the component + \param [in] resPairAmpInt the number of the daughter not produced by the resonance + \param [in] daughters the daughter particles + \param [in] resSpin the spin of the final channel into which the K-matrix scatters + */ + LauAbsKMatrixProdComp(const TString& compName, const Int_t resPairAmpInt, const LauDaughters* daughters, const Int_t resSpin) : + LauAbsResonance{ compName, resPairAmpInt, daughters, resSpin } + { + } + + //! Retrieve the propagator with which this component is associated + virtual const LauKMatrixPropagator* getPropagator() const = 0; + + private: + ClassDef(LauAbsKMatrixProdComp, 0) // K-matrix production vector component + +}; + +#endif