void si4754Radio::slotSearchChannel(void) { int res = -1; if(m_isSearching) { if(m_radioMode == RM_FREQ_SECTION_FM) { res = seekFM(); if(!res)//为0表示收到台 { int channel = si475xFMRX_get_frequency(); if(isFM(channel*10))//在FM范围内,超范围的台丢弃 { emit searchedOneChannel(channel*10); QTimer::singleShot(100,this,SLOT(slotSearchChannel())); } else { emit searchEnd(RM_SEARCH_R_OK); } } else//收不到台表示收台完成 { emit searchEnd(RM_SEARCH_R_OK); } } else { res = seekAM(); if(!res)//为0表示收到台 { int channel = si475xAMRX_get_frequency(); if(isAM(channel))//在AM范围内,超范围的台丢弃 { emit searchedOneChannel(channel); QTimer::singleShot(100,this,SLOT(slotSearchChannel())); } else { emit searchEnd(RM_SEARCH_R_OK); } } else//收不到台表示收台完成 { emit searchEnd(RM_SEARCH_R_OK); } } } else { emit searchEnd(RM_SEARCH_R_CANCEL); } }
int searchEnd(int A[], int target, int left, int right) { if (left > right) return -1; if (left == right && A[left] == target) return left; if (A[left] > target || A[right] < target) return -1; int mid = (left + right + 1) / 2; if (target >= A[mid]) { return searchEnd(A, target, mid, right); } else { return searchEnd(A, target, left, mid - 1); } }
static PassRefPtr<Range> findStringBetweenPositions(const String& target, const Position& start, const Position& end, FindOptions options) { Position searchStart(start); Position searchEnd(end); bool forward = !(options & Backwards); while (true) { Position resultStart; Position resultEnd; findPlainText(searchStart, searchEnd, target, options, resultStart, resultEnd); if (resultStart == resultEnd) return nullptr; RefPtr<Range> resultRange = Range::create(*resultStart.document(), resultStart, resultEnd); if (!resultRange->collapsed()) return resultRange.release(); // Found text spans over multiple TreeScopes. Since it's impossible to return such section as a Range, // we skip this match and seek for the next occurrence. // FIXME: Handle this case. if (forward) searchStart = resultStart.next(); else searchEnd = resultEnd.previous(); } ASSERT_NOT_REACHED(); return nullptr; }
int RadioManagerOld::stopSearch() { //printf("[radio][%4d] ~~~~~~~~~~~~~~~~~stopSearch \n", __LINE__, RM_SEARCH_R_CANCEL); if(status !=RM_STATUS_SEARCH) return RM_R_OK; killTimer(timeId); status = RM_STATUS_LISTEN; if(listenedChannel !=0) { if(freqSection ==RM_FREQ_SECTION_FM) selectFMChannel(listenedChannel,0); else selectAMChannel(listenedChannel,0); } else { closeRadio(); } emit searchChannelChanged(currentSearchChannel,0); //printf("[radio][%4d] ~~~~~~~~~~~~~~~~~searchEnd cause[%d] \n", __LINE__, RM_SEARCH_R_CANCEL); emit searchEnd(RM_SEARCH_R_CANCEL); return RM_R_OK; }
vector<int> searchRange(int A[], int n, int target) { // Start typing your C/C++ solution below // DO NOT write int main() function vector<int> ans; int start, end; start = searchStart(A, target, 0, n - 1); end = searchEnd(A, target, 0, n - 1); ans.push_back(start); ans.push_back(end); return ans; }
int RadioManagerOld::closeRadio() { if(status == RM_STATUS_INIT) return RM_R_OK; if(status ==RM_STATUS_SEARCH) { killTimer(timeId); status =RM_STATUS_INIT; //printf("[radio][%4d] ~~~~~~~~~ close radio searchEnd cause[%d] \n", __LINE__, RM_SEARCH_R_CANCEL); emit searchChannelChanged(currentSearchChannel,0); emit searchEnd(RM_SEARCH_R_CANCEL); } else { status =RM_STATUS_INIT; } return RM_R_OK; }
MainPage::MainPage(QWidget* parent) : QWidget(parent) , search_widget_(new SearchWidget(8, false, this)) , contact_dialog_(new ContactDialog(this)) , video_window_(new VideoWindow()) , video_panel_(new CallPanelMain(this)) , pages_(new WidgetsNavigator(this)) , search_contacts_(nullptr) , profile_settings_(new ProfileSettingsWidget(this)) , general_settings_(new GeneralSettingsWidget(this)) , noContactsYetSuggestions_(nullptr) , contact_list_widget_(new ContactList(this, Logic::MembersWidgetRegim::CONTACT_LIST, NULL)) , add_contact_menu_(0) { connect(&Utils::InterConnector::instance(), SIGNAL(showNoContactsYetSuggestions()), this, SLOT(showNoContactsYetSuggestions())); connect(&Utils::InterConnector::instance(), SIGNAL(hideNoContactsYetSuggestions()), this, SLOT(hideNoContactsYetSuggestions())); if (this->objectName().isEmpty()) this->setObjectName(QStringLiteral("main_page")); this->resize(400, 300); this->setProperty("Invisible", QVariant(true)); horizontal_layout_ = new QHBoxLayout(this); horizontal_layout_->setSpacing(0); horizontal_layout_->setObjectName(QStringLiteral("horizontalLayout")); horizontal_layout_->setContentsMargins(0, 0, 0, 0); QMetaObject::connectSlotsByName(this); QHBoxLayout* originalLayout = qobject_cast<QHBoxLayout*>(layout()); QVBoxLayout* contactsLayout = new QVBoxLayout(); contactsLayout->setContentsMargins(0, 0, 0, 0); contactsLayout->setSpacing(0); assert(video_panel_); if (video_panel_) { contactsLayout->addWidget(video_panel_); video_panel_->hide(); } contactsLayout->addWidget(search_widget_); contactsLayout->addWidget(contact_list_widget_); QSpacerItem* contactsLayoutSpacer = new QSpacerItem(0, 0, QSizePolicy::Minimum); contactsLayout->addSpacerItem(contactsLayoutSpacer); pages_layout_ = new QVBoxLayout(); pages_layout_->setContentsMargins(0, 0, 0, 0); pages_layout_->setSpacing(0); pages_layout_->addWidget(pages_); { auto pc = pages_->count(); pages_->addWidget(contact_dialog_); pages_->addWidget(profile_settings_); pages_->addWidget(general_settings_); if (!pc) pages_->push(contact_dialog_); } originalLayout->addLayout(contactsLayout); originalLayout->addLayout(pages_layout_); QSpacerItem* originalLayoutSpacer = new QSpacerItem(0, 0, QSizePolicy::Minimum); originalLayout->addSpacerItem(originalLayoutSpacer); originalLayout->setAlignment(Qt::AlignLeft); setFocus(); connect(contact_list_widget_, SIGNAL(itemSelected(QString)), contact_dialog_, SLOT(onContactSelected(QString)), Qt::QueuedConnection); connect(contact_dialog_, SIGNAL(sendMessage(QString)), contact_list_widget_, SLOT(onSendMessage(QString)), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(itemSelected(QString)), this, SLOT(onContactSelected(QString)), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(addContactClicked()), this, SLOT(onAddContactClicked()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsShow(QString)), this, SLOT(onProfileSettingsShow(QString)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(generalSettingsShow(int)), this, SLOT(onGeneralSettingsShow(int)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(generalSettingsBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(makeSearchWidgetVisible(bool)), search_widget_, SLOT(setVisible(bool)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(popPagesToRoot()), pages_, SLOT(poproot()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsDoMessage(QString)), contact_list_widget_, SLOT(select(QString)), Qt::QueuedConnection); connect(search_widget_, SIGNAL(searchBegin()), this, SLOT(searchBegin()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(searchEnd()), this, SLOT(searchEnd()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(search(QString)), Logic::GetSearchModel(), SLOT(searchPatternChanged(QString)), Qt::QueuedConnection); connect(search_widget_, SIGNAL(enterPressed()), contact_list_widget_, SLOT(searchResult()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(upPressed()), contact_list_widget_, SLOT(searchUpPressed()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(downPressed()), contact_list_widget_, SLOT(searchDownPressed()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(nonActiveButtonPressed()), this, SLOT(addButtonClicked()), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(searchEnd()), search_widget_, SLOT(searchCompleted()), Qt::QueuedConnection); connect(Logic::GetContactListModel(), SIGNAL(selectedContactChanged(QString)), Logic::GetMessagesModel(), SLOT(contactChanged(QString)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipShowVideoWindow(bool)), this, SLOT(onVoipShowVideoWindow(bool)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallIncoming(const std::string&, const std::string&)), this, SLOT(onVoipCallIncoming(const std::string&, const std::string&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallIncomingAccepted(const voip_manager::ContactEx&)), this, SLOT(onVoipCallIncomingAccepted(const voip_manager::ContactEx&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallDestroyed(const voip_manager::ContactEx&)), this, SLOT(onVoipCallDestroyed(const voip_manager::ContactEx&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallCreated(const voip_manager::ContactEx&)), this, SLOT(onVoipCallCreated(const voip_manager::ContactEx&)), Qt::DirectConnection); search_widget_->setVisible(!contact_list_widget_->shouldHideSearch()); }
void SearchWidget::searchCompleted() { ClearInput(); setActive(false); emit searchEnd(); }
MainPage::MainPage(QWidget* parent) : QWidget(parent) , search_widget_(new SearchWidget(false, this)) , contact_dialog_(new ContactDialog(this)) #ifndef STRIP_VOIP , video_window_(nullptr) #else , video_window_(nullptr) #endif //STRIP_VOIP , pages_(new WidgetsNavigator(this)) , search_contacts_(nullptr) , profile_settings_(new ProfileSettingsWidget(this)) , general_settings_(new GeneralSettingsWidget(this)) , live_chats_page_(new LiveChatHome(this)) , themes_settings_(new ThemesSettingsWidget(this)) , noContactsYetSuggestions_(nullptr) , contact_list_widget_(new ContactList(this, Logic::MembersWidgetRegim::CONTACT_LIST, nullptr)) , add_contact_menu_(nullptr) , settings_timer_(new QTimer(this)) , introduceYourselfSuggestions_(nullptr) , needShowIntroduceYourself_(false) , liveChats_(new LiveChats(this)) , login_new_user_(false) , recv_my_info_(false) { connect(&Utils::InterConnector::instance(), &Utils::InterConnector::showPlaceholder, this, &MainPage::showPlaceholder); if (this->objectName().isEmpty()) this->setObjectName(QStringLiteral("main_page")); setStyleSheet(Utils::LoadStyle(":/main_window/main_window.qss", Utils::get_scale_coefficient(), true)); this->resize(400, 300); this->setProperty("Invisible", QVariant(true)); horizontal_layout_ = new QHBoxLayout(this); horizontal_layout_->setSpacing(0); horizontal_layout_->setObjectName(QStringLiteral("horizontalLayout")); horizontal_layout_->setContentsMargins(0, 0, 0, 0); QMetaObject::connectSlotsByName(this); QHBoxLayout* originalLayout = qobject_cast<QHBoxLayout*>(layout()); QVBoxLayout* contactsLayout = new QVBoxLayout(); contactsLayout->setContentsMargins(0, 0, 0, 0); contactsLayout->setSpacing(0); contactsLayout->addWidget(search_widget_); contactsLayout->addWidget(contact_list_widget_); QSpacerItem* contactsLayoutSpacer = new QSpacerItem(0, 0, QSizePolicy::Minimum); contactsLayout->addSpacerItem(contactsLayoutSpacer); pages_layout_ = new QVBoxLayout(); pages_layout_->setContentsMargins(0, 0, 0, 0); pages_layout_->setSpacing(0); pages_layout_->addWidget(pages_); { auto pc = pages_->count(); pages_->addWidget(contact_dialog_); pages_->addWidget(profile_settings_); pages_->addWidget(general_settings_); pages_->addWidget(live_chats_page_); pages_->addWidget(themes_settings_); if (!pc) pages_->push(contact_dialog_); } originalLayout->addLayout(contactsLayout); originalLayout->addLayout(pages_layout_); QSpacerItem* originalLayoutSpacer = new QSpacerItem(0, 0, QSizePolicy::Minimum); originalLayout->addSpacerItem(originalLayoutSpacer); originalLayout->setAlignment(Qt::AlignLeft); setFocus(); connect(contact_list_widget_, SIGNAL(itemSelected(QString)), contact_dialog_, SLOT(onContactSelected(QString)), Qt::QueuedConnection); connect(contact_dialog_, SIGNAL(sendMessage(QString)), contact_list_widget_, SLOT(onSendMessage(QString)), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(itemSelected(QString)), this, SLOT(onContactSelected(QString)), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(addContactClicked()), this, SLOT(onAddContactClicked()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsShow(QString)), this, SLOT(onProfileSettingsShow(QString)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(themesSettingsShow(bool,QString)), this, SLOT(onThemesSettingsShow(bool,QString)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(generalSettingsShow(int)), this, SLOT(onGeneralSettingsShow(int)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(liveChatsShow()), this, SLOT(onLiveChatsShow()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(generalSettingsBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(themesSettingsBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(attachPhoneBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(attachUinBack()), pages_, SLOT(pop()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(makeSearchWidgetVisible(bool)), search_widget_, SLOT(setVisible(bool)), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(popPagesToRoot()), this, SLOT(popPagesToRoot()), Qt::QueuedConnection); connect(&Utils::InterConnector::instance(), SIGNAL(profileSettingsDoMessage(QString)), contact_list_widget_, SLOT(select(QString)), Qt::QueuedConnection); connect(search_widget_, SIGNAL(searchBegin()), this, SLOT(searchBegin()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(searchEnd()), this, SLOT(searchEnd()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(search(QString)), Logic::GetSearchModel(), SLOT(searchPatternChanged(QString)), Qt::QueuedConnection); connect(search_widget_, SIGNAL(enterPressed()), contact_list_widget_, SLOT(searchResult()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(upPressed()), contact_list_widget_, SLOT(searchUpPressed()), Qt::QueuedConnection); connect(search_widget_, SIGNAL(downPressed()), contact_list_widget_, SLOT(searchDownPressed()), Qt::QueuedConnection); connect(contact_list_widget_, SIGNAL(searchEnd()), search_widget_, SLOT(searchCompleted()), Qt::QueuedConnection); connect(Logic::GetContactListModel(), SIGNAL(selectedContactChanged(QString)), Logic::GetMessagesModel(), SLOT(contactChanged(QString)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipShowVideoWindow(bool)), this, SLOT(onVoipShowVideoWindow(bool)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallIncoming(const std::string&, const std::string&)), this, SLOT(onVoipCallIncoming(const std::string&, const std::string&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallIncomingAccepted(const voip_manager::ContactEx&)), this, SLOT(onVoipCallIncomingAccepted(const voip_manager::ContactEx&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallDestroyed(const voip_manager::ContactEx&)), this, SLOT(onVoipCallDestroyed(const voip_manager::ContactEx&)), Qt::DirectConnection); connect(&Ui::GetDispatcher()->getVoipController(), SIGNAL(onVoipCallCreated(const voip_manager::ContactEx&)), this, SLOT(onVoipCallCreated(const voip_manager::ContactEx&)), Qt::DirectConnection); search_widget_->setVisible(!contact_list_widget_->shouldHideSearch()); post_stats_with_settings(); QObject::connect(settings_timer_, SIGNAL(timeout()), this, SLOT(post_stats_with_settings())); settings_timer_->start(Ui::period_for_stats_settings_ms); connect(Ui::GetDispatcher(), &core_dispatcher::myInfo, this, &MainPage::myInfo, Qt::UniqueConnection); connect(Ui::GetDispatcher(), &core_dispatcher::login_new_user, this, &MainPage::loginNewUser, Qt::DirectConnection); add_contact_menu_ = new FlatMenu(search_widget_->searchEditIcon()); Utils::ApplyStyle(add_contact_menu_, "QMenu { background-color: #f2f2f2; border:1px solid #cccccc; } " "QMenu::item { padding-left:40dip; background-color:transparent; color:black; padding-top:6dip; padding-bottom:6dip; padding-right:12dip; } " "QMenu::item:selected { background-color:#e2e2e2; } " "QMenu::icon { padding-left:22dip; }" ); add_contact_menu_->addAction(QIcon(Utils::parse_image_name(":/resources/dialog_newchat_100.png")), QT_TRANSLATE_NOOP("contact_list", "New chat"), contact_list_widget_, SLOT(allClicked())); add_contact_menu_->addAction(QIcon(Utils::parse_image_name(":/resources/dialog_newgroup_100.png")), QT_TRANSLATE_NOOP("contact_list", "Create Groupchat"), this, SLOT(createGroupChat())); add_contact_menu_->setExpandDirection(Qt::AlignLeft); add_contact_menu_->stickToIcon(); Utils::ApplyStyle(search_widget_->searchEditIcon(), "QPushButton::menu-indicator { image:none; } QPushButton:pressed { background-color:transparent; }"); search_widget_->searchEditIcon()->setMenu(add_contact_menu_); }
void RadioManagerOld::searchNextChannel() { printf("+++++++++++++++++++++++RadioManagerOld::searchNextChannel+++++++++++++++++++++\n"); int nextSearchInterval =RM_AM_SEARCH_INTERVAL; if(freqSection == RM_FREQ_SECTION_FM) nextSearchInterval =RM_FM_SEARCH_INTERVAL; lastSearchChannel =currentSearchChannel; if(freqSection ==RM_FREQ_SECTION_FM) { currentSearchChannel +=RM_FM_FREQ_STEP; if(currentSearchChannel>RM_FM_FREQ_MAX) { currentSearchChannel=0; } } else { currentSearchChannel +=RM_AM_FREQ_STEP; if(currentSearchChannel>RM_AM_FREQ_MAX) { currentSearchChannel=0; } } printf("~~~~~~~~~~~~~~~~~lastSearchChannel[%d] currentSearchChannel[%d]\n", lastSearchChannel, currentSearchChannel); if ( currentSearchChannel > 107900 ) { currentSearchChannel=0; } emit searchChannelChanged(lastSearchChannel,currentSearchChannel); if(currentSearchChannel>0) { if(m_voiceSwithFunction!=NULL && m_voiceStatus ==RM_VOICE_SWITCH_ON) { m_voiceSwithFunction(RM_VOICE_SWITCH_OFF,m_voiceSwithUserData); m_voiceStatus =RM_VOICE_SWITCH_OFF; } if(freqSection ==RM_FREQ_SECTION_FM) searchFMChannel(currentSearchChannel,1); else searchAMChannel(currentSearchChannel, 1); timeId =startTimer(nextSearchInterval); } else { if(listenedChannel!=0) { if(m_voiceSwithFunction!=NULL) m_voiceSwithFunction(RM_VOICE_SWITCH_ON,m_voiceSwithUserData); if(freqSection ==RM_FREQ_SECTION_FM) selectFMChannel(listenedChannel,0); else selectAMChannel(listenedChannel,0); status =RM_STATUS_LISTEN; } else { closeRadio(); } printf("~~~~~~~~~~~~~~~~~searchEnd Normally \n"); emit searchEnd(RM_SEARCH_R_OK); } printf("~~~~~~~~~~~~~~~~~searchEnd returnm%d %d \n", lastSearchChannel, currentSearchChannel); return; }
int RadioManagerOld::openRadioAtChannel(int frequencySection,int channel,char searchFlag) { if(status ==RM_STATUS_LISTEN || status ==RM_STATUS_SEARCH) { if(status ==RM_STATUS_SEARCH) { killTimer(timeId); //printf("[radio][%4d] ~~~~~~~~~~~~~~~~~searchEnd cause[%d] \n", __LINE__, RM_SEARCH_R_CANCEL); emit searchChannelChanged(currentSearchChannel,0); emit searchEnd(RM_SEARCH_R_CANCEL); } status =RM_STATUS_OPENED; } printf("-++++++++++++++ open Radio start +++++++++++++++-\n"); int rssi; int snr; if(frequencySection==RM_FREQ_SECTION_FM) { rssi = 20; snr = 3; readParameterConfig(RM_FREQ_SECTION_FM, &rssi, &snr); si47xxAMRX_powerdown(); printf("------->[%s] FM rssi:%d snr:%d +++++++++++++++-\n",__func__,rssi,snr); si47xxFMRX_initialize( rssi, snr ); si47xxFMRX_set_volume(30); // full volume, turn off mute } else { rssi = 25; snr = 5; readParameterConfig(RM_FREQ_SECTION_AM, &rssi, &snr); si47xxFMRX_powerdown(); printf("------->[%s] AM rssi:%d snr:%d +++++++++++++++-\n",__func__,rssi,snr); si47xxAMRX_initialize( rssi, snr ); si47xxAMRX_set_volume(30); // full volume, turn off mute } wait_ms(RM_SEARCHED_INTERVAL); if(frequencySection==RM_FREQ_SECTION_FM) { freqSection =RM_FREQ_SECTION_FM; printf("~~~~~~~~~~~~~~~~~~~~~~~~ select one FM chanel ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"); selectFMChannel(channel,searchFlag); } else { freqSection =RM_FREQ_SECTION_AM; printf("~~~~~~~~~~~~~~~~~~~~~~~~ select one AM chanel start ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"); selectAMChannel(channel,searchFlag ); printf("~~~~~~~~~~~~~~~~~~~~~~~~ select one AM chanel over ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"); } status =RM_STATUS_LISTEN; return RM_R_OK; }