just with external settings editors.... (untested yet)
{
while (m_cursor != m_db->m_services.end())
{
{
while (m_cursor != m_db->m_services.end())
{
+ ePtr<eDVBService> service = m_cursor->second;
+ if (service->isHidden())
+ ++m_cursor;
+ else
+ {
+ ref = m_cursor->first;
- int res = (!m_query) || m_cursor->second->checkFilter(ref, *m_query);
+ int res = (!m_query) || service->checkFilter(ref, *m_query);
+ if (res)
+ return 0;
+ }
}
ref.type = eServiceReference::idInvalid;
}
ref.type = eServiceReference::idInvalid;
std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it =
m_db->m_services.find(ref);
std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it =
m_db->m_services.find(ref);
- int res = (!m_query) || it == m_db->m_services.end() || it->second->checkFilter(ref, *m_query);
+ int res = (!m_query) || it == m_db->m_services.end() || !it->second->isHidden() && it->second->checkFilter(ref, *m_query);
for (std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it(m_db->m_services.begin());
it != m_db->m_services.end(); ++it)
{
for (std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it(m_db->m_services.begin());
it != m_db->m_services.end(); ++it)
{
- int res = it->second->checkFilter(it->first, *query);
+ int res = !it->second->isHidden() && it->second->checkFilter(it->first, *query);
if (res)
{
unsigned int dvbnamespace = it->first.getDVBNamespace().get()&0xFFFF0000;
if (res)
{
unsigned int dvbnamespace = it->first.getDVBNamespace().get()&0xFFFF0000;
for (std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it(m_db->m_services.begin());
it != m_db->m_services.end(); ++it)
{
for (std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it(m_db->m_services.begin());
it != m_db->m_services.end(); ++it)
{
- int res = it->second->checkFilter(it->first, *query);
+ int res = !it->second->isHidden() && it->second->checkFilter(it->first, *query);
if (res)
{
const char *provider_name = it->second->m_provider_name.length() ?
if (res)
{
const char *provider_name = it->second->m_provider_name.length() ?
enum
{
dxNoSDT=1, // don't get SDT
enum
{
dxNoSDT=1, // don't get SDT
dxNoDVB=4, // dont use PMT for this service ( use cached pids )
dxHoldName=8,
dxNewFound=64,
};
bool usePMT() const { return !(m_flags & dxNoDVB); }
dxNoDVB=4, // dont use PMT for this service ( use cached pids )
dxHoldName=8,
dxNewFound=64,
};
bool usePMT() const { return !(m_flags & dxNoDVB); }
+ bool isHidden() const { return m_flags & dxDontshow; }