ValueMapRendererComponent.cpp 1.3 KB

#include "ValueMapRendererComponent.h"

namespace DmapCore_30
{
	int ValueMapRendererComponent::GetN()
	{
		return m_iN;
	}
	ValueMapRendererComponent::ValueMapRendererComponent()
	{
		m_iN = 1;
		m_pSymbol = NULL;
		m_sValue = "";
	}
	ValueMapRendererComponent::ValueMapRendererComponent(Renderer* pSymbol, string sValue)
	{
		m_iN = 1;
		m_pSymbol = pSymbol;
		m_sValue = sValue;
	}
	ValueMapRendererComponent::~ValueMapRendererComponent()
	{
		if (m_pSymbol)
			m_pSymbol->Release();
	}
	ValueMapRendererComponent* ValueMapRendererComponent::CreateNew()
	{
		ValueMapRendererComponent * dest = new ValueMapRendererComponent();
		return dest;
	}
	bool ValueMapRendererComponent::AddRef()
	{
		m_iN++;
		return true;
	}
	bool ValueMapRendererComponent::Release()
	{
		m_iN--;
		if (m_iN < 0)
			return false;
		if (!m_iN)
			delete this;
		return true;
	}

	Renderer* ValueMapRendererComponent::GetSymbol()
	{
		m_pSymbol->AddRef();
		return m_pSymbol;
	}
	bool ValueMapRendererComponent::SetSymbol(Renderer* pSymbol)
	{
		if (!pSymbol)
			return false;
		pSymbol->AddRef();
		if (m_pSymbol)
			m_pSymbol->Release();
		m_pSymbol = pSymbol;
		return true;
	}
	const char* ValueMapRendererComponent::GetValue()
	{
		return m_sValue.c_str();
	}
	bool ValueMapRendererComponent::SetValue(const char * sValue)
	{
		m_sValue = sValue;
		return true;
	}
}