Commit 6affa72e authored by Giuseppe Carboni's avatar Giuseppe Carboni
Browse files

Issue #885, some KQWReceiver related fixes

parent 2caf101e
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -467,11 +467,11 @@ protected:
    /** Obtain a valid reference to the local oscillator device
    /** Obtain a valid reference to the local oscillator device
	  * @throw ComponentErrors::CouldntGetComponentExImpl   
	  * @throw ComponentErrors::CouldntGetComponentExImpl   
     */
     */
    void loadLocalOscillator(Receivers::LocalOscillator_ptr device,bool &fault,const IRA::CString& name);
    void loadLocalOscillator(Receivers::LocalOscillator_var& device,bool &fault,const IRA::CString& name);




    /** Used to free the reference to the local oscillator device */
    /** Used to free the reference to the local oscillator device */
    void unloadLocalOscillator(Receivers::LocalOscillator_ptr device,const IRA::CString& name);
    void unloadLocalOscillator(Receivers::LocalOscillator_var& device,const IRA::CString& name);




    /************************ CONVERSION FUNCTIONS **************************/
    /************************ CONVERSION FUNCTIONS **************************/
+11 −13
Original line number Original line Diff line number Diff line
@@ -80,10 +80,10 @@ void CComponentCore::cleanup()
        m_control->closeConnection();
        m_control->closeConnection();
        delete m_control;
        delete m_control;
    }
    }
    unloadLocalOscillator(m_localOscillatorDevice_K.out(),m_configuration.getLocalOscillatorInstance_K());
    unloadLocalOscillator(m_localOscillatorDevice_K,m_configuration.getLocalOscillatorInstance_K());
    unloadLocalOscillator(m_localOscillatorDevice_Q.out(),m_configuration.getLocalOscillatorInstance_Q());
    unloadLocalOscillator(m_localOscillatorDevice_Q,m_configuration.getLocalOscillatorInstance_Q());
    unloadLocalOscillator(m_localOscillatorDevice_WL.out(),m_configuration.getLocalOscillatorInstance_WL());
    unloadLocalOscillator(m_localOscillatorDevice_WL,m_configuration.getLocalOscillatorInstance_WL());
    unloadLocalOscillator(m_localOscillatorDevice_WH.out(),m_configuration.getLocalOscillatorInstance_WH());
    unloadLocalOscillator(m_localOscillatorDevice_WH,m_configuration.getLocalOscillatorInstance_WH());
}
}


const IRA::CString& CComponentCore::getActualMode()
const IRA::CString& CComponentCore::getActualMode()
@@ -415,7 +415,6 @@ throw (
*/
*/
void CComponentCore::setLO(const ACS::doubleSeq& lo) 
void CComponentCore::setLO(const ACS::doubleSeq& lo) 
{
{
	
    double trueValue,amp;
    double trueValue,amp;
    double *freq=NULL;
    double *freq=NULL;
    double *power=NULL;
    double *power=NULL;
@@ -470,18 +469,18 @@ void CComponentCore::setLO(const ACS::doubleSeq& lo)
    		// make sure the synthesizer component is available
    		// make sure the synthesizer component is available


			if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::KBAND) {
			if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::KBAND) {
    			loadLocalOscillator(m_localOscillatorDevice_K.out(),m_localOscillatorFault_K,
				loadLocalOscillator(m_localOscillatorDevice_K,m_localOscillatorFault_K,
    			m_configuration.getLocalOscillatorInstance_K()); 	 // throw (ComponentErrors::CouldntGetComponentExImpl)
    			m_configuration.getLocalOscillatorInstance_K()); 	 // throw (ComponentErrors::CouldntGetComponentExImpl)
    		} else if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::QBAND) {
    		} else if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::QBAND) {
    			loadLocalOscillator(m_localOscillatorDevice_Q.out(),m_localOscillatorFault_Q,
				loadLocalOscillator(m_localOscillatorDevice_Q,m_localOscillatorFault_Q,
    			m_configuration.getLocalOscillatorInstance_Q()); // throw (ComponentErrors::CouldntGetComponentExImpl)
    			m_configuration.getLocalOscillatorInstance_Q()); // throw (ComponentErrors::CouldntGetComponentExImpl)
    		} else if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::WLBAND) {
    		} else if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::WLBAND) {
    			loadLocalOscillator(m_localOscillatorDevice_WL.out(),m_localOscillatorFault_WL,
				loadLocalOscillator(m_localOscillatorDevice_WL,m_localOscillatorFault_WL,
    			m_configuration.getLocalOscillatorInstance_WL()); // throw (ComponentErrors::CouldntGetComponentExImpl)
    			m_configuration.getLocalOscillatorInstance_WL()); // throw (ComponentErrors::CouldntGetComponentExImpl)
    		}
    		}
    		else { //WHBAND
    		else { //WHBAND
    			loadLocalOscillator(m_localOscillatorDevice_WL.out(),m_localOscillatorFault_WL,
				loadLocalOscillator(m_localOscillatorDevice_WH,m_localOscillatorFault_WH,
    			m_configuration.getLocalOscillatorInstance_WL()); // throw (ComponentErrors::CouldntGetComponentExImpl)
				m_configuration.getLocalOscillatorInstance_WH()); // throw (ComponentErrors::CouldntGetComponentExImpl)
    		}
    		}
   			try {
   			try {
   				if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::KBAND) {
   				if (m_configuration.getArrayIndex(k)==CConfiguration<maci::ContainerServices>::KBAND) {
@@ -510,7 +509,6 @@ void CComponentCore::setLO(const ACS::doubleSeq& lo)
        		throw impl;
        		throw impl;
    		}
    		}
    		m_configuration.setCurrentLOValue(lo[k],k);
    		m_configuration.setCurrentLOValue(lo[k],k);
    					
    	}
    	}
    }
    }
}
}
@@ -1179,7 +1177,7 @@ void CComponentCore::updateVertexTemperature()
}
}


//throw (ComponentErrors::CouldntGetComponentExImpl)
//throw (ComponentErrors::CouldntGetComponentExImpl)
void CComponentCore::loadLocalOscillator(Receivers::LocalOscillator_ptr device,bool &fault,const IRA::CString& name)
void CComponentCore::loadLocalOscillator(Receivers::LocalOscillator_var& device,bool &fault,const IRA::CString& name)
{
{
    // If reference was already taken, but an error was found....dispose the reference
    // If reference was already taken, but an error was found....dispose the reference
    if ((!CORBA::is_nil(device)) && (fault)) { 
    if ((!CORBA::is_nil(device)) && (fault)) { 
@@ -1217,7 +1215,7 @@ void CComponentCore::loadLocalOscillator(Receivers::LocalOscillator_ptr device,b
    }
    }
}
}


void CComponentCore::unloadLocalOscillator(Receivers::LocalOscillator_ptr device,const IRA::CString& name)
void CComponentCore::unloadLocalOscillator(Receivers::LocalOscillator_var& device,const IRA::CString& name)
{
{
    if (!CORBA::is_nil(device)) {
    if (!CORBA::is_nil(device)) {
        try {
        try {
+24 −0
Original line number Original line Diff line number Diff line
<?xml version='1.0' encoding='ISO-8859-1'?>

<!--Values are dummies here, to be replaced with real ones -->

<LocalOscillatorLookUpTable xmlns="urn:schemas-cosylab-com:LocalOscillatorLookUpTable:1.0"
             	xmlns:baci="urn:schemas-cosylab-com:BACI:1.0"
				xmlns:cdb="urn:schemas-cosylab-com:CDB:1.0"
				xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<SynthesizerEntry><Frequency>350.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>400.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>800.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>1200.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>1600.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>2000.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>2400.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

</LocalOscillatorLookUpTable>
+24 −0
Original line number Original line Diff line number Diff line
<?xml version='1.0' encoding='ISO-8859-1'?>

<!--Values are dummies here, to be replaced with real ones -->

<LocalOscillatorLookUpTable xmlns="urn:schemas-cosylab-com:LocalOscillatorLookUpTable:1.0"
             	xmlns:baci="urn:schemas-cosylab-com:BACI:1.0"
				xmlns:cdb="urn:schemas-cosylab-com:CDB:1.0"
				xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<SynthesizerEntry><Frequency>350.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>400.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>800.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>1200.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>1600.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>2000.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

<SynthesizerEntry><Frequency>2400.0</Frequency><OutputPower>19.0</OutputPower></SynthesizerEntry>

</LocalOscillatorLookUpTable>
Loading