Skip to content
Snippets Groups Projects
ActualData.cpp 2.7 KiB
Newer Older
  • Learn to ignore specific revisions
  • Radim Vavřík's avatar
    Radim Vavřík committed
    #include "ActualData.h"
    namespace math1d_cl
    {
    	ActualData::ActualData(std::shared_ptr<math1d_cl::MatData> matData, std::shared_ptr<math1d_cl::Channel> amChannel, int amChannelIdx, std::shared_ptr<math1d_cl::Station> amStation, int amStationIdx, std::vector<int> upstreamChannels, double stepCn, double stepN, double p, Limit cnLimit, Limit nLimit)
    	{
    		this->m_amChannel = amChannel;
    		this->m_amChannelIdx = amChannelIdx;
    		this->m_amStation = amStation;
    		this->m_amStationIdx = amStationIdx;
    		this->m_stepCn = stepCn;
    		this->m_stepN = stepN;
    		this->m_p = p;
    		this->m_cnLimit = cnLimit;
    		this->m_nLimit = nLimit;
    
    		// Get active channels
    		for (size_t i = 0; i < upstreamChannels.size(); i++)
    		{
    			std::shared_ptr<math1d_cl::Channel> currentChannel = matData->getChannels()[upstreamChannels[i]];
    			m_cnChannels.push_back(currentChannel);
    			m_cnChannelsIdx.push_back(upstreamChannels[i]);
    			if(currentChannel->getN() > 0)
    			{
    				m_nChannels.push_back(currentChannel);
    				m_nChannelsIdx.push_back(upstreamChannels[i]);
    			}
    		}
    	}
    
    	std::shared_ptr<math1d_cl::Channel> ActualData::getamChannel()
    	{
    		return this->m_amChannel;
    	}
    
    	std::shared_ptr<math1d_cl::Station> ActualData::getamStation()
    	{
    		return this->m_amStation;		
    	}
    		
    	std::vector<std::shared_ptr<math1d_cl::Channel>>  ActualData::getNChannels()
    	{
    		return this->m_nChannels;
    	}
    
    	std::vector<std::shared_ptr<math1d_cl::Channel>> ActualData::getCnChannels()
    	{
    		return this->m_cnChannels;
    	}
    
    	double ActualData::getStepCn()
    	{
    		return m_stepCn;
    	}
    
    	double ActualData::getStepN()
    	{
    		return m_stepN;
    	}
    
    	double ActualData::getP()
    	{
    		return m_p;
    	}
    
    	std::vector<int> ActualData::getNChannelsIdx()
    	{
    		return m_nChannelsIdx;
    	}
    
    	std::vector<int> ActualData::getCnChannelsIdx()
    	{
    		return m_cnChannelsIdx;
    	}
    
    	int ActualData::getAmChannelIdx()
    	{
    		return m_amChannelIdx;
    	}
    
    	int ActualData::getAmStationIdx()
    	{
    		return m_amStationIdx;
    	}
    
    	void ActualData::setCnDerivation(std::shared_ptr<std::vector<double>> cnDerivation)
    	{
    		m_cnDerivation = cnDerivation;
    	}
    	
    	std::shared_ptr<std::vector<double>> ActualData::getCnDerivation()
    	{		
    		return m_cnDerivation;
    	}
    	
    	void ActualData::setnDerivation(std::shared_ptr<std::vector<double>> nDerivation)
    	{
    		m_nDerivation = nDerivation;
    	}
    	
    	std::shared_ptr<std::vector<double>> ActualData::getnDerivation()
    	{
    		return m_nDerivation;
    	}
    	void ActualData::setCnLimit(Limit cnLimit)
    	{
    		m_cnLimit = cnLimit;
    	}
    	Limit ActualData::getCnLimit()
    	{
    		return m_cnLimit;
    	}
    	void ActualData::setnLimit(Limit nLimit)
    	{
    		m_nLimit = nLimit;
    	}
    	Limit ActualData::getNLimit()
    	{
    		return m_nLimit;
    	}
    
    
    }