Commit 0fb8889b authored by Giuseppe Carboni's avatar Giuseppe Carboni
Browse files

Merge branch 'master' of github.com:discos/discos into centos_7_compatibility

parents 9059811c 766b0dd9
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -81,10 +81,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/

## [discos1.0.6] - 09-02-2022
## Added
    issue #655 - ACU Component for Noto and Medicina is now capble to prevent seldom mode changes coming from ACU reset
    issue #655 - ACU Component for Noto and Medicina is now capable to prevent seldom mode changes coming from ACU reset
    issue #653 - added a couple of scriptsto ease vnc conection from remote a file copying. The scripts support 
                 linux and macos
	issue #588 - added the control of the new Noto subreflector and primary focus receiver box servo system.     
    issue #758 - Sardara enabled for Medicina
    
## Fixed
    issue #448 - Added Sky Offsets to calibration tool client
+22 −4
Original line number Diff line number Diff line
@@ -101,8 +101,17 @@ void CRecvBossCore::calOn() throw (ComponentErrors::ValidationErrorExImpl,Compon
			throw impl;
		}
	}
	else */if ((m_currentRecvCode=="XXP") || (m_currentRecvCode=="CCC") || (m_currentRecvCode=="CHC") || (m_currentRecvCode=="KKC"))  {
	else */
	if ((m_currentRecvCode=="XXP") || (m_currentRecvCode=="CCC") || (m_currentRecvCode=="CHC") || (m_currentRecvCode=="KKC"))  {
		try {
			m_calMux_proxy->calOn();
		}
		catch (ComponentErrors::ComponentErrorsEx& ex) {
			_ADD_BACKTRACE(ReceiversErrors::UnavailableReceiverOperationExImpl,impl,ex,"CRecvBossCore::calOn()");
			impl.setReceiverCode((const char *)m_currentRecvCode);
			changeBossStatus(Management::MNG_FAILURE);
			throw impl;			
		}
		// turn the marca on through the FS
		/*IRA::CString fsBuffer("calon\n");
		if (!sendToFS((const void *)fsBuffer,fsBuffer.GetLength())) {
@@ -158,7 +167,8 @@ void CRecvBossCore::calOff() throw (ComponentErrors::ValidationErrorExImpl,Compo
			throw impl;
		}
	}
	else*/ if ((m_currentRecvCode=="XXP") || (m_currentRecvCode=="CCC") || (m_currentRecvCode=="CHC") || (m_currentRecvCode=="KKC")) {
	else*/ 
	if ((m_currentRecvCode=="XXP") || (m_currentRecvCode=="CCC") || (m_currentRecvCode=="CHC") || (m_currentRecvCode=="KKC")) {
		// turn the marca on through thr FS
		/*IRA::CString fsBuffer("caloff\n");
		if (!sendToFS((const void *)fsBuffer,fsBuffer.GetLength())) {
@@ -166,8 +176,16 @@ void CRecvBossCore::calOff() throw (ComponentErrors::ValidationErrorExImpl,Compo
			m_status=Management::MNG_FAILURE;
			throw impl;
		}*/
		try {
			m_calMux_proxy->calOff();
		}
		catch (ComponentErrors::ComponentErrorsEx& ex) {
			_ADD_BACKTRACE(ReceiversErrors::UnavailableReceiverOperationExImpl,impl,ex,"CRecvBossCore::calOff()");
			impl.setReceiverCode((const char *)m_currentRecvCode);
			changeBossStatus(Management::MNG_FAILURE);
			throw impl;			
		}	
	}
	else {
		_EXCPT(ComponentErrors::ValidationErrorExImpl,impl,"CRecvBossCore::calOff()");
		impl.setReason("Receiver not configured yet");
+19 −9
Original line number Diff line number Diff line
@@ -1101,6 +1101,7 @@ void CCore::_callTSys(ACS::doubleSeq& tsys) throw (ComponentErrors::CouldntGetCo
	ratio.length(inputs);
	tsys.length(inputs);
	for (int i=0;i<inputs;i++) {
		if ((i<(int)tpiCal->length()) && (i<(int)tpi->length()) && (i<(int)zero->length()) && (i<(int)mark->length())) {
			if ((mark[i]>0.0) && (tpiCal[i]>tpi[i])) {
				//ratio[i]=(tpiCal[i]-tpi[i])/mark[i];
				ratio[i]=mark[i]/(tpiCal[i]-tpi[i]);
@@ -1112,6 +1113,11 @@ void CCore::_callTSys(ACS::doubleSeq& tsys) throw (ComponentErrors::CouldntGetCo
				tsys[i]=-1.0;
			}
		}
		else {
			ratio[i]=1.0;
			tsys[i]=-1.0;
		}
	}
	//Now contact the backend to give back some results.....
	try {
		backend->setKelvinCountsRatio(ratio,tsys);
@@ -1126,13 +1132,17 @@ void CCore::_callTSys(ACS::doubleSeq& tsys) throw (ComponentErrors::CouldntGetCo
	for (int i=0;i<inputs;i++) {
		outLog.Format("DEVICE/%d Feed: %d, IF: %d, Freq: %lf, Bw: %lf/",i,feed[i],IFs[i],freq[i],bandWidth[i]);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
		outLog.Format("CALTEMP/%d %lf(%lf)",i,mark[i],scaleFactor);
		if (i<(int)mark->length()) outLog.Format("CALTEMP/%d %lf(%lf)",i,mark[i],scaleFactor);
		else outLog.Format("CALTEMP/%d %lf(%lf)",i,-1.0,scaleFactor);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
		outLog.Format("TPICAL/%d %lf",i,tpiCal[i]);
		if (i<(int)tpiCal->length()) outLog.Format("TPICAL/%d %lf",i,tpiCal[i]);
		else outLog.Format("TPICAL/%d %lf",i,-1.0);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
		outLog.Format("TPIZERO/%d %lf",i,zero[i]);
		if (i<(int)zero->length()) outLog.Format("TPIZERO/%d %lf",i,zero[i]);
		else outLog.Format("TPIZERO/%d %lf",i,-1.0);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
		outLog.Format("TPI/%d %lf",i,tpi[i]);
		if (i<(int)tpi->length()) outLog.Format("TPI/%d %lf",i,tpi[i]);
		else outLog.Format("TPI/%d %lf",i,-1.0);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
		outLog.Format("TSYS/%d %lf",i,tsys[i]);
		ACS_LOG(LM_FULL_INFO,"CCore::callTSys()",(LM_NOTICE,(const char *)outLog));
+10 −2
Original line number Diff line number Diff line
@@ -83,7 +83,8 @@ bool CParser::parse(CBaseSchedule* unit,DWORD& line,IRA::CString& errorMsg)
		IRA::CString inputLine(inLine);
		inputLine.Replace('\r',' ',0);
		inputLine.RTrim();
		if ((inLine[0]!=COMMENT_CHAR) && (inLine[0]!=0) && (strlen(inLine)!=0)) {
		inputLine.LTrim();
		if ((inputLine[0]!=COMMENT_CHAR) && (inputLine[0]!=0) && (inputLine.GetLength()!=0)) {
			if (!unit->parseLine(inputLine,line,errorMsg)) {
				return false;
			}
@@ -167,7 +168,14 @@ bool CBackendList::parseLine(const IRA::CString& line,const DWORD& lnNumber,IRA:
	workLine.RTrim();
	workLine.LTrim();
	if (m_started) { // if the procedure is started
		if (workLine.Find(PROCEDURE_STOP)>=0) { // if the end bracket is found...close the procedure parsing
		if (workLine.Find(PROCEDURE_STOP)>=0) { // if the end bracket is found....
			IRA::CString token;
			int start=0;
			if (IRA::CIRATools::getNextToken(workLine,start,PROCEDURE_STOP,token)) { // if there is a command in the same line of the end proc				
				 // push command before closing the procedure.....
				if (token.GetLength()>0) m_currentRecord->proc.push_back(token);
			}
			//... then close the procedure
			m_backend.push_back(m_currentRecord);
			m_started=false;
			m_currentRecord=NULL;
+5 −3
Original line number Diff line number Diff line
@@ -21,8 +21,7 @@ STD:BACKENDS/TotalPower {
	setSection=12,-1,300.0,-1,-1,0.000025,-1
	setSection=13,-1,300.0,-1,-1,0.000025,-1	
	setAttenuation=1,15
	enable=1,1,1,1,1,1,1,1,1,1,1,1,1,1
}
	enable=1,1,1,1,1,1,1,1,1,1,1,1,1,1}

HIGH:BACKENDS/TotalPower {
	integration=25
@@ -32,3 +31,6 @@ HIGH:BACKENDS/TotalPower {
	setAttenuation=1,9
	enable=1,1,0,0,0,0,0,0,0,0,0,0,0,0
   }
   
LOW:BACKENDS/Sardara {
	integration=25}
 No newline at end of file
Loading