-void eDVBFrontend::setRotorData(int pos, int cmd)
-{
- m_data[ROTOR_CMD] = cmd;
- m_data[ROTOR_POS] = pos;
- if ( m_data[SATPOS_DEPENDS_PTR] != -1 )
- {
- eDVBRegisteredFrontend *satpos_depends_to_fe = (eDVBRegisteredFrontend*) m_data[SATPOS_DEPENDS_PTR];
- satpos_depends_to_fe->m_frontend->m_data[ROTOR_CMD] = cmd;
- satpos_depends_to_fe->m_frontend->m_data[ROTOR_POS] = pos;
- }
- else
- {
- eDVBRegisteredFrontend *next = (eDVBRegisteredFrontend *)m_data[LINKED_NEXT_PTR];
- while ( (long)next != -1 )
- {
- next->m_frontend->m_data[ROTOR_CMD] = cmd;
- next->m_frontend->m_data[ROTOR_POS] = pos;
- next = (eDVBRegisteredFrontend *)next->m_frontend->m_data[LINKED_NEXT_PTR];
- }
- eDVBRegisteredFrontend *prev = (eDVBRegisteredFrontend *)m_data[LINKED_PREV_PTR];
- while ( (long)prev != -1 )
- {
- prev->m_frontend->m_data[ROTOR_CMD] = cmd;
- prev->m_frontend->m_data[ROTOR_POS] = pos;
- prev = (eDVBRegisteredFrontend *)prev->m_frontend->m_data[LINKED_PREV_PTR];
- }
- }
-}
-