diff --git a/MAC/APL/Appl_Controller/startBGL.sh b/MAC/APL/Appl_Controller/startBGL.sh index 8ea31c2d2e51b4b0b8c3a081efa059141b5b29d0..845f15e992ecdef9da27f99704be9cae15eb1564 100755 --- a/MAC/APL/Appl_Controller/startBGL.sh +++ b/MAC/APL/Appl_Controller/startBGL.sh @@ -11,6 +11,8 @@ # # all ACC processes expect to be started with "ACC" as first parameter +JOBNAME=$1 + . /opt/lofar/etc/BlueGeneControl.conf # Select the newest parset in the list. Multiple file names are supported @@ -30,5 +32,10 @@ done sed -i 's/.*OLAP.CNProc.integrationSteps.*//' $PARSET sed -i 's/.*OLAP.IONProc.integrationSteps.*//' $PARSET +( +echo "OLAP.IONProc.PLC_ProcID = $JOBNAME" +echo "OLAP.IONProc.PLC_controlled = T" +) >> $PARSET + # Inject the parset into the correlator $BINPATH/runParset.py -P $PARTITION parset=$PARSET >>/opt/lofar/log/run.runParset.py.log 2>&1 & diff --git a/RTCP/Interface/include/Interface/Parset.h b/RTCP/Interface/include/Interface/Parset.h index 11ff6120f38ae2eddc87941f36dd1bda3e244ee1..fa533e6f4f255d4ac053ae9b72e66f82a0706631 100644 --- a/RTCP/Interface/include/Interface/Parset.h +++ b/RTCP/Interface/include/Interface/Parset.h @@ -191,6 +191,11 @@ public: string constructSubbandFilename( const string &mask, unsigned subband ) const; string constructBeamFormedFilename( const string &mask, unsigned beam, unsigned stokes, unsigned file ) const; + bool PLC_controlled() const; + string PLC_ProcID() const; + string PLC_Host() const; + uint32 PLC_Port() const; + private: const std::string itsName; @@ -726,6 +731,31 @@ inline string Parset::targetHost(const string &prefix, const string &filename) c return ""; } +inline bool Parset::PLC_controlled() const +{ + return getBool("OLAP.IONProc.PLC_controlled",false); +} + +inline string Parset::PLC_ApplID() const +{ + return getString("ApplCtrl.application","CorrAppl"); +} + +inline string Parset::PLC_ProcID() const +{ + return getString("OLAP.IONProc.PLC_ProcID","CorrProc"); +} + +inline string Parset::PLC_Host() const +{ + return getString(str(format("%s.%s._ACnode") % PLC_ApplID() % PLC_ProcID())); +} + +inline uint32 Parset::PLC_Port() const +{ + return getUint32(str(format("%s.%s._ACport") % PLC_ApplID() % PLC_ProcID())); +} + } // namespace RTCP } // namespace LOFAR