summaryrefslogtreecommitdiff
Diffstat
-rw-r--r--tv_callback.h7
-rw-r--r--tv_input.cpp96
-rw-r--r--tvapi/android/include/ITv.h34
-rw-r--r--tvapi/android/include/ITvClient.h12
-rw-r--r--tvapi/android/include/ITvService.h18
-rw-r--r--tvapi/android/include/TvClient.h5
-rw-r--r--tvapi/android/include/tvcmd.h1180
-rw-r--r--tvapi/android/jni/cfbc_jni.cpp214
-rw-r--r--tvapi/android/jni/cfbc_test.cpp64
-rw-r--r--tvapi/android/jni/com_droidlogic_app_tv_TvControlManager.cpp666
-rw-r--r--tvapi/android/libtvbinder/ITv.cpp246
-rw-r--r--tvapi/android/libtvbinder/ITvClient.cpp78
-rw-r--r--tvapi/android/libtvbinder/ITvService.cpp56
-rw-r--r--tvapi/android/libtvbinder/TvClient.cpp54
-rw-r--r--tvapi/android/tv/TvPlay.cpp36
-rw-r--r--tvapi/android/tv/TvPlay.h2
-rw-r--r--tvapi/android/tvserver/TvService.cpp8700
-rw-r--r--tvapi/android/tvserver/TvService.h107
-rw-r--r--tvapi/android/tvserver/main.cpp12
-rw-r--r--tvapi/android/tvserver/tv_callback.h25
-rw-r--r--tvapi/libtv/audio/CAudioCustomerCtrl.cpp170
-rw-r--r--tvapi/libtv/audio/CAudioCustomerCtrl.h32
-rw-r--r--tvapi/libtv/audio/CTvAudio.h52
-rw-r--r--tvapi/libtv/audio/audio_alsa.cpp1004
-rw-r--r--tvapi/libtv/audio/audio_alsa.h164
-rw-r--r--tvapi/libtv/audio/audio_effect.cpp82
-rw-r--r--tvapi/libtv/audio/audio_effect.h34
-rw-r--r--tvapi/libtv/include/amstream.h142
-rw-r--r--tvapi/libtv/include/cm.h188
-rw-r--r--tvapi/libtv/include/hdmirx_cec.h492
-rw-r--r--tvapi/libtv/include/ve.h342
-rw-r--r--tvapi/libtv/tv/AutoBackLight.cpp280
-rw-r--r--tvapi/libtv/tv/AutoBackLight.h44
-rw-r--r--tvapi/libtv/tv/CAutoPQparam.cpp172
-rw-r--r--tvapi/libtv/tv/CAutoPQparam.h26
-rw-r--r--tvapi/libtv/tv/CAv.cpp612
-rw-r--r--tvapi/libtv/tv/CAv.h188
-rw-r--r--tvapi/libtv/tv/CFbcCommunication.cpp2670
-rw-r--r--tvapi/libtv/tv/CFbcCommunication.h716
-rw-r--r--tvapi/libtv/tv/CFrontEnd.cpp964
-rw-r--r--tvapi/libtv/tv/CFrontEnd.h236
-rw-r--r--tvapi/libtv/tv/CTv.cpp2174
-rw-r--r--tvapi/libtv/tv/CTv.h1470
-rw-r--r--tvapi/libtv/tv/CTvBooking.cpp170
-rw-r--r--tvapi/libtv/tv/CTvBooking.h94
-rw-r--r--tvapi/libtv/tv/CTvDmx.cpp8
-rw-r--r--tvapi/libtv/tv/CTvDmx.h12
-rw-r--r--tvapi/libtv/tv/CTvEpg.cpp258
-rw-r--r--tvapi/libtv/tv/CTvEpg.h276
-rw-r--r--tvapi/libtv/tv/CTvEv.cpp2
-rw-r--r--tvapi/libtv/tv/CTvEv.h322
-rw-r--r--tvapi/libtv/tv/CTvRecord.cpp368
-rw-r--r--tvapi/libtv/tv/CTvRecord.h70
-rw-r--r--tvapi/libtv/tv/CTvScanner.cpp1934
-rw-r--r--tvapi/libtv/tv/CTvScanner.h418
-rw-r--r--tvapi/libtv/tv/CTvScreenCapture.cpp1228
-rw-r--r--tvapi/libtv/tv/CTvScreenCapture.h142
-rw-r--r--tvapi/libtv/tv/CTvSubtitle.cpp708
-rw-r--r--tvapi/libtv/tv/CTvSubtitle.h430
-rw-r--r--tvapi/libtv/tv/CTvTime.h134
-rw-r--r--tvapi/libtv/tv/CTvVchipCheck.cpp250
-rw-r--r--tvapi/libtv/tv/CTvVchipCheck.h40
-rw-r--r--tvapi/libtv/tv/CUpgradeFBC.cpp974
-rw-r--r--tvapi/libtv/tv/CUpgradeFBC.h104
-rw-r--r--tvapi/libtv/tv/ScreenCatch.cpp638
-rw-r--r--tvapi/libtv/tvconfig/CIniFile.cpp558
-rw-r--r--tvapi/libtv/tvconfig/CIniFile.h76
-rw-r--r--tvapi/libtv/tvconfig/tvconfig.cpp28
-rw-r--r--tvapi/libtv/tvdb/CTvChannel.cpp408
-rw-r--r--tvapi/libtv/tvdb/CTvChannel.h478
-rw-r--r--tvapi/libtv/tvdb/CTvDatabase.cpp302
-rw-r--r--tvapi/libtv/tvdb/CTvDatabase.h112
-rw-r--r--tvapi/libtv/tvdb/CTvDimension.cpp714
-rw-r--r--tvapi/libtv/tvdb/CTvDimension.h134
-rw-r--r--tvapi/libtv/tvdb/CTvEvent.cpp322
-rw-r--r--tvapi/libtv/tvdb/CTvEvent.h112
-rw-r--r--tvapi/libtv/tvdb/CTvGroup.cpp4
-rw-r--r--tvapi/libtv/tvdb/CTvGroup.h14
-rw-r--r--tvapi/libtv/tvdb/CTvProgram.cpp1322
-rw-r--r--tvapi/libtv/tvdb/CTvProgram.h988
-rw-r--r--tvapi/libtv/tvdb/CTvRegion.cpp228
-rw-r--r--tvapi/libtv/tvdb/CTvRegion.h30
-rw-r--r--tvapi/libtv/tvin/CHDMIRxCEC.cpp830
-rw-r--r--tvapi/libtv/tvin/CSourceConnectDetect.cpp438
-rw-r--r--tvapi/libtv/tvin/CSourceConnectDetect.h76
-rw-r--r--tvapi/libtv/tvin/CTvin.cpp4452
-rw-r--r--tvapi/libtv/tvin/CTvin.h2116
-rw-r--r--tvapi/libtv/tvsetting/CBlobDevice.cpp6
-rw-r--r--tvapi/libtv/tvsetting/CBlobDevice.h72
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceE2prom.cpp12
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceE2prom.h48
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceFile.cpp66
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceFile.h20
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceRam.cpp146
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceRam.h40
-rw-r--r--tvapi/libtv/tvsetting/CTvSetting.cpp2168
-rw-r--r--tvapi/libtv/tvsetting/CTvSettingDeviceFactory.cpp38
-rw-r--r--tvapi/libtv/tvsetting/CTvSettingDeviceFactory.h8
-rw-r--r--tvapi/libtv/tvsetting/TvKeyData.cpp1792
-rw-r--r--tvapi/libtv/tvsetting/audio_cfg.cpp958
-rw-r--r--tvapi/libtv/tvutils/CCondition.h84
-rw-r--r--tvapi/libtv/tvutils/CFile.cpp261
-rw-r--r--tvapi/libtv/tvutils/CFile.h50
-rw-r--r--tvapi/libtv/tvutils/CHdmiCecCmd.cpp6
-rw-r--r--tvapi/libtv/tvutils/CHdmiCecCmd.h6
-rw-r--r--tvapi/libtv/tvutils/CMsgQueue.cpp146
-rw-r--r--tvapi/libtv/tvutils/CMsgQueue.h40
-rw-r--r--tvapi/libtv/tvutils/CMutex.h112
-rw-r--r--tvapi/libtv/tvutils/CSerialCommunication.cpp118
-rw-r--r--tvapi/libtv/tvutils/CSerialCommunication.h60
-rw-r--r--tvapi/libtv/tvutils/CSerialPort.cpp568
-rw-r--r--tvapi/libtv/tvutils/CSerialPort.h42
-rw-r--r--tvapi/libtv/tvutils/CSqlite.cpp126
-rw-r--r--tvapi/libtv/tvutils/CSqlite.h288
-rw-r--r--tvapi/libtv/tvutils/CThread.cpp212
-rw-r--r--tvapi/libtv/tvutils/CThread.h76
-rw-r--r--tvapi/libtv/tvutils/CTvInput.cpp204
-rw-r--r--tvapi/libtv/tvutils/CTvInput.h46
-rw-r--r--tvapi/libtv/tvutils/serial_base.cpp560
-rw-r--r--tvapi/libtv/tvutils/serial_operate.cpp336
-rw-r--r--tvapi/libtv/tvutils/serial_operate.h42
-rw-r--r--tvapi/libtv/tvutils/tvutils.cpp2813
-rw-r--r--tvapi/libtv/tvutils/tvutils.h44
-rw-r--r--tvapi/libtv/tvutils/zepoll.cpp66
-rw-r--r--tvapi/libtv/tvutils/zepoll.h54
-rw-r--r--tvapi/libtv/version/version.cpp50
-rw-r--r--tvapi/libtv/vpp/CPQdb.cpp618
-rw-r--r--tvapi/libtv/vpp/CPQdb.h232
-rw-r--r--tvapi/libtv/vpp/CVpp.cpp724
-rw-r--r--tvapi/libtv/vpp/CVpp.h676
-rw-r--r--tvapi/libtv/vpp/pqdata.cpp216
-rw-r--r--tvapi/tvtests/comm_test.cpp42
-rw-r--r--tvapi/tvtests/ssm_test.cpp320
-rw-r--r--tvapi/tvtests/tvconfig_test.cpp560
134 files changed, 31073 insertions, 30287 deletions
diff --git a/tvapi/libtv/tvdb/CTvProgram.cpp b/tvapi/libtv/tvdb/CTvProgram.cpp
index fdd1c68..d9dca52 100644
--- a/tvapi/libtv/tvdb/CTvProgram.cpp
+++ b/tvapi/libtv/tvdb/CTvProgram.cpp
@@ -22,334 +22,334 @@
CTvProgram::CTvProgram(CTvDatabase::Cursor &c)
{
- CreateFromCursor(c);
+ CreateFromCursor(c);
}
CTvProgram::~CTvProgram()
{
- //free mem
- // video
- if (mpVideo != NULL) delete mpVideo;
- // audios
- int size = mvAudios.size();
- for (int i = 0; i < size; i++)
- delete mvAudios[i];
- // subtitles
- size = mvSubtitles.size();
- for (int i = 0; i < size; i++)
- delete mvSubtitles[i];
- // teletexts
- size = mvTeletexts.size();
- for (int i = 0; i < size; i++)
- delete mvTeletexts[i];
+ //free mem
+ // video
+ if (mpVideo != NULL) delete mpVideo;
+ // audios
+ int size = mvAudios.size();
+ for (int i = 0; i < size; i++)
+ delete mvAudios[i];
+ // subtitles
+ size = mvSubtitles.size();
+ for (int i = 0; i < size; i++)
+ delete mvSubtitles[i];
+ // teletexts
+ size = mvTeletexts.size();
+ for (int i = 0; i < size; i++)
+ delete mvTeletexts[i];
}
CTvProgram::CTvProgram(int channelID, int type)
{
- mpVideo = NULL;
+ mpVideo = NULL;
}
CTvProgram::CTvProgram()
{
- mpVideo = NULL;
+ mpVideo = NULL;
}
int CTvProgram::CreateFromCursor(CTvDatabase::Cursor &c)
{
- int i = 0;
- int col;
- int num, type;
- int major, minor;
- char tmp_buf[256];
- //LOGD("CTvProgram::CreateFromCursor");
- col = c.getColumnIndex("db_id");
- this->id = c.getInt(col);
-
- col = c.getColumnIndex("source_id");
- this->sourceID = c.getInt(col);
-
- col = c.getColumnIndex("src");
- this->src = c.getInt(col);
-
- col = c.getColumnIndex("service_id");
- this->dvbServiceID = c.getInt(col);
-
- col = c.getColumnIndex("db_ts_id");
- this->channelID = c.getInt(col);
-
- col = c.getColumnIndex("name");
- this->name = c.getString(col);
-
- col = c.getColumnIndex("chan_num");
- num = c.getInt(col);
-
- col = c.getColumnIndex("chan_order");
- this->chanOrderNum = c.getInt(col);
-
- col = c.getColumnIndex("major_chan_num");
- major = c.getInt(col);
-
- col = c.getColumnIndex("minor_chan_num");
- minor = c.getInt(col);
-
- col = c.getColumnIndex("aud_track");
- this->audioTrack = c.getInt(col);
-
- //节目号信息初??
- if (src == CTvChannel::MODE_ATSC || (src == CTvChannel::MODE_ANALOG && major > 0)) {
- this->major = major;
- this->minor = minor;
- this->atscMode = true;
- this->minorCheck = MINOR_CHECK_NONE;
- } else {
- this->major = num;
- this->minor = 0;
- this->atscMode = false;
- this->minorCheck = MINOR_CHECK_NONE;
- }
-
- col = c.getColumnIndex("service_type");
- this->type = c.getInt(col);
-
- col = c.getColumnIndex("pmt_pid");
- pmtPID = c.getInt(col);
-
- //LOGD("CTvProgram::CreateFromCursor type = %d", this->type);
- col = c.getColumnIndex("skip");
- this->skip = c.getInt(col);
-
- col = c.getColumnIndex("lock");
- this->lock = (c.getInt(col) != 0);
-
- col = c.getColumnIndex("scrambled_flag");
- this->scrambled = (c.getInt(col) != 0);
-
- col = c.getColumnIndex("favor");
- this->favorite = (c.getInt(col) != 0);
-
- col = c.getColumnIndex("volume");
- this->volume = c.getInt(col);
-
- //Video
- int pid, fmt;
- col = c.getColumnIndex("vid_pid");
- pid = c.getInt(col);
-
- col = c.getColumnIndex("vid_fmt");
- fmt = c.getInt(col);
-
- //LOGD("----------vpid = %d", pid);
- this->mpVideo = new Video(pid, fmt);
- //LOGD("----------vpid = %d", this->mpVideo->getPID());
-
-
- //Audio
- String8 strPids;
- String8 strFmts;
- String8 strLangs;
- int count = 0;
- col = c.getColumnIndex("aud_pids");
- strPids = c.getString(col);
-
- col = c.getColumnIndex("aud_fmts");
- strFmts = c.getString(col);
-
- col = c.getColumnIndex("aud_langs");
- strLangs = c.getString(col);
- col = c.getColumnIndex("current_aud");
- this->currAudTrackIndex = c.getInt(col);
-
- char *tmp;
- Vector<String8> vpid ;
- Vector<String8> vfmt ;
- Vector<String8> vlang;
-
- char *pSave;
- tmp = strtok_r(strPids.lockBuffer(strPids.length()), " ", &pSave);
- while (tmp != NULL) {
- vpid.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strPids.unlockBuffer();
-
- tmp = strtok_r(strFmts.lockBuffer(strFmts.length()), " ", &pSave);
- while (tmp != NULL) {
- vfmt.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strFmts.unlockBuffer();
-
- tmp = strtok_r(strLangs.lockBuffer(strLangs.length()), " ", &pSave);
-
- while (tmp != NULL) {
- vlang.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strLangs.unlockBuffer();
-
- //check empty aud_langs
- for (i = vlang.size(); i < vpid.size(); i++) {
- sprintf(tmp_buf, "Audio%d", i + 1);
- vlang.push_back(String8(tmp_buf));
- LOGE("%s, aud_langs is empty, add dummy data (%s).\n", "TV", tmp_buf);
- }
-
- //String8 l(vlang[i]);
- for (i = 0; i < vpid.size(); i++) {
- int i_pid = atoi(vpid[i]);
- int i_fmt = atoi(vfmt[i]);
- mvAudios.push_back(new Audio(i_pid, vlang[i], i_fmt));
- }
-
-
-
- /* parse subtitles */
- vpid.clear();
- vlang.clear();
- Vector<String8> vcid;
- Vector<String8> vaid;
- String8 strCids;
- String8 strAids;
-
- col = c.getColumnIndex("sub_pids");
- strPids = c.getString(col);
-
- col = c.getColumnIndex("sub_composition_page_ids");
- strCids = c.getString(col);
-
- col = c.getColumnIndex("sub_ancillary_page_ids");
- strAids = c.getString(col);
-
-
- col = c.getColumnIndex("sub_langs");
- strLangs = c.getString(col);
-
- tmp = strtok_r(strPids.lockBuffer(strPids.length()), " ", &pSave);
- while (tmp != NULL) {
- vpid.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strPids.unlockBuffer();
-
- tmp = strtok_r(strCids.lockBuffer(strCids.length()), " ", &pSave);
- while (tmp != NULL) {
- vcid.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strCids.unlockBuffer();
-
- tmp = strtok_r(strAids.lockBuffer(strAids.length()), " ", &pSave);
- while (tmp != NULL) {
- vaid.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strAids.unlockBuffer();
-
- tmp = strtok_r(strLangs.lockBuffer(strLangs.length()), " ", &pSave);
- while (tmp != NULL) {
- vlang.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- strLangs.unlockBuffer();
-
- //Subtitle
- for (int i = 0; i < vpid.size(); i++) {
- this->mvSubtitles.push_back(new Subtitle(
- atoi(vpid[i]),
- String8(vlang[i]), Subtitle::TYPE_DVB_SUBTITLE,
- atoi(vcid[i]),
- atoi(vaid[i])));
- }
-
- /*
- parse teletexts
- int ttx_count = 0, ttx_sub_count = 0;
- String8 str_ttx_pids, str_ttx_types, str_mag_nos, str_page_nos, str_ttx_langs;
- Vector<String8> v_ttx_pids, v_ttx_types, v_mag_nos, v_page_nos, v_ttx_langs;
- col = c.getColumnIndex("ttx_pids");
- str_ttx_pids = c.getString(col);
-
- col = c.getColumnIndex("ttx_types");
- str_ttx_types = c.getString(col);
-
- col = c.getColumnIndex("ttx_magazine_nos");
- str_mag_nos = c.getString(col);
-
- col = c.getColumnIndex("ttx_page_nos");
- str_page_nos = c.getString(col);
-
- col = c.getColumnIndex("ttx_langs");
- str_ttx_langs = c.getString(col);
-
- tmp = strtok_r(str_ttx_pids.lockBuffer(str_ttx_pids.length()), " ", &pSave);
- while (tmp != NULL) {
- v_ttx_pids.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- str_ttx_pids.unlockBuffer();
-
- tmp = strtok_r(str_ttx_types.lockBuffer(str_ttx_types.length()), " ", &pSave);
- while (tmp != NULL) {
- v_ttx_types.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- str_ttx_types.unlockBuffer();
-
- tmp = strtok_r(str_mag_nos.lockBuffer(str_mag_nos.length()), " ", &pSave);
- while (tmp != NULL) {
- v_mag_nos.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- str_mag_nos.unlockBuffer();
-
- tmp = strtok_r(str_page_nos.lockBuffer(str_page_nos.length()), " ", &pSave);
- while (tmp != NULL) {
- v_page_nos.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- str_page_nos.unlockBuffer();
-
- tmp = strtok_r(str_ttx_langs.lockBuffer(str_ttx_langs.length()), " ", &pSave);
- while (tmp != NULL) {
- v_ttx_langs.push_back(String8(tmp));
- tmp = strtok_r(NULL, " ", &pSave);
- }
- str_ttx_langs.unlockBuffer();
-
-
- for (int i = 0; i < v_ttx_pids.size(); i++) {
- int ttype = atoi(v_ttx_types[i]);
- if (ttype == 0x2 || ttype == 0x5) {
- this->mvSubtitles.push_back(new Subtitle(
- atoi(v_ttx_pids[i].string()),
- String8(v_ttx_langs[i]), Subtitle::TYPE_DTV_TELETEXT,
- atoi(v_mag_nos[i]),
- atoi(v_page_nos[i])));
- } else {
- this->mvTeletexts.push_back(new Teletext(
- atoi(v_ttx_pids[i]),
- String8(v_ttx_langs[i]),
- atoi(v_mag_nos[i]),
- atoi(v_page_nos[i])));
- }
- }
- */
- return 0;
+ int i = 0;
+ int col;
+ int num, type;
+ int major, minor;
+ char tmp_buf[256];
+ //LOGD("CTvProgram::CreateFromCursor");
+ col = c.getColumnIndex("db_id");
+ this->id = c.getInt(col);
+
+ col = c.getColumnIndex("source_id");
+ this->sourceID = c.getInt(col);
+
+ col = c.getColumnIndex("src");
+ this->src = c.getInt(col);
+
+ col = c.getColumnIndex("service_id");
+ this->dvbServiceID = c.getInt(col);
+
+ col = c.getColumnIndex("db_ts_id");
+ this->channelID = c.getInt(col);
+
+ col = c.getColumnIndex("name");
+ this->name = c.getString(col);
+
+ col = c.getColumnIndex("chan_num");
+ num = c.getInt(col);
+
+ col = c.getColumnIndex("chan_order");
+ this->chanOrderNum = c.getInt(col);
+
+ col = c.getColumnIndex("major_chan_num");
+ major = c.getInt(col);
+
+ col = c.getColumnIndex("minor_chan_num");
+ minor = c.getInt(col);
+
+ col = c.getColumnIndex("aud_track");
+ this->audioTrack = c.getInt(col);
+
+ //节目号信息初??
+ if (src == CTvChannel::MODE_ATSC || (src == CTvChannel::MODE_ANALOG && major > 0)) {
+ this->major = major;
+ this->minor = minor;
+ this->atscMode = true;
+ this->minorCheck = MINOR_CHECK_NONE;
+ } else {
+ this->major = num;
+ this->minor = 0;
+ this->atscMode = false;
+ this->minorCheck = MINOR_CHECK_NONE;
+ }
+
+ col = c.getColumnIndex("service_type");
+ this->type = c.getInt(col);
+
+ col = c.getColumnIndex("pmt_pid");
+ pmtPID = c.getInt(col);
+
+ //LOGD("CTvProgram::CreateFromCursor type = %d", this->type);
+ col = c.getColumnIndex("skip");
+ this->skip = c.getInt(col);
+
+ col = c.getColumnIndex("lock");
+ this->lock = (c.getInt(col) != 0);
+
+ col = c.getColumnIndex("scrambled_flag");
+ this->scrambled = (c.getInt(col) != 0);
+
+ col = c.getColumnIndex("favor");
+ this->favorite = (c.getInt(col) != 0);
+
+ col = c.getColumnIndex("volume");
+ this->volume = c.getInt(col);
+
+ //Video
+ int pid, fmt;
+ col = c.getColumnIndex("vid_pid");
+ pid = c.getInt(col);
+
+ col = c.getColumnIndex("vid_fmt");
+ fmt = c.getInt(col);
+
+ //LOGD("----------vpid = %d", pid);
+ this->mpVideo = new Video(pid, fmt);
+ //LOGD("----------vpid = %d", this->mpVideo->getPID());
+
+
+ //Audio
+ String8 strPids;
+ String8 strFmts;
+ String8 strLangs;
+ int count = 0;
+ col = c.getColumnIndex("aud_pids");
+ strPids = c.getString(col);
+
+ col = c.getColumnIndex("aud_fmts");
+ strFmts = c.getString(col);
+
+ col = c.getColumnIndex("aud_langs");
+ strLangs = c.getString(col);
+ col = c.getColumnIndex("current_aud");
+ this->currAudTrackIndex = c.getInt(col);
+
+ char *tmp;
+ Vector<String8> vpid ;
+ Vector<String8> vfmt ;
+ Vector<String8> vlang;
+
+ char *pSave;
+ tmp = strtok_r(strPids.lockBuffer(strPids.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vpid.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strPids.unlockBuffer();
+
+ tmp = strtok_r(strFmts.lockBuffer(strFmts.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vfmt.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strFmts.unlockBuffer();
+
+ tmp = strtok_r(strLangs.lockBuffer(strLangs.length()), " ", &pSave);
+
+ while (tmp != NULL) {
+ vlang.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strLangs.unlockBuffer();
+
+ //check empty aud_langs
+ for (i = vlang.size(); i < vpid.size(); i++) {
+ sprintf(tmp_buf, "Audio%d", i + 1);
+ vlang.push_back(String8(tmp_buf));
+ LOGE("%s, aud_langs is empty, add dummy data (%s).\n", "TV", tmp_buf);
+ }
+
+ //String8 l(vlang[i]);
+ for (i = 0; i < vpid.size(); i++) {
+ int i_pid = atoi(vpid[i]);
+ int i_fmt = atoi(vfmt[i]);
+ mvAudios.push_back(new Audio(i_pid, vlang[i], i_fmt));
+ }
+
+
+
+ /* parse subtitles */
+ vpid.clear();
+ vlang.clear();
+ Vector<String8> vcid;
+ Vector<String8> vaid;
+ String8 strCids;
+ String8 strAids;
+
+ col = c.getColumnIndex("sub_pids");
+ strPids = c.getString(col);
+
+ col = c.getColumnIndex("sub_composition_page_ids");
+ strCids = c.getString(col);
+
+ col = c.getColumnIndex("sub_ancillary_page_ids");
+ strAids = c.getString(col);
+
+
+ col = c.getColumnIndex("sub_langs");
+ strLangs = c.getString(col);
+
+ tmp = strtok_r(strPids.lockBuffer(strPids.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vpid.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strPids.unlockBuffer();
+
+ tmp = strtok_r(strCids.lockBuffer(strCids.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vcid.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strCids.unlockBuffer();
+
+ tmp = strtok_r(strAids.lockBuffer(strAids.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vaid.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strAids.unlockBuffer();
+
+ tmp = strtok_r(strLangs.lockBuffer(strLangs.length()), " ", &pSave);
+ while (tmp != NULL) {
+ vlang.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ strLangs.unlockBuffer();
+
+ //Subtitle
+ for (int i = 0; i < vpid.size(); i++) {
+ this->mvSubtitles.push_back(new Subtitle(
+ atoi(vpid[i]),
+ String8(vlang[i]), Subtitle::TYPE_DVB_SUBTITLE,
+ atoi(vcid[i]),
+ atoi(vaid[i])));
+ }
+
+ /*
+ parse teletexts
+ int ttx_count = 0, ttx_sub_count = 0;
+ String8 str_ttx_pids, str_ttx_types, str_mag_nos, str_page_nos, str_ttx_langs;
+ Vector<String8> v_ttx_pids, v_ttx_types, v_mag_nos, v_page_nos, v_ttx_langs;
+ col = c.getColumnIndex("ttx_pids");
+ str_ttx_pids = c.getString(col);
+
+ col = c.getColumnIndex("ttx_types");
+ str_ttx_types = c.getString(col);
+
+ col = c.getColumnIndex("ttx_magazine_nos");
+ str_mag_nos = c.getString(col);
+
+ col = c.getColumnIndex("ttx_page_nos");
+ str_page_nos = c.getString(col);
+
+ col = c.getColumnIndex("ttx_langs");
+ str_ttx_langs = c.getString(col);
+
+ tmp = strtok_r(str_ttx_pids.lockBuffer(str_ttx_pids.length()), " ", &pSave);
+ while (tmp != NULL) {
+ v_ttx_pids.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ str_ttx_pids.unlockBuffer();
+
+ tmp = strtok_r(str_ttx_types.lockBuffer(str_ttx_types.length()), " ", &pSave);
+ while (tmp != NULL) {
+ v_ttx_types.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ str_ttx_types.unlockBuffer();
+
+ tmp = strtok_r(str_mag_nos.lockBuffer(str_mag_nos.length()), " ", &pSave);
+ while (tmp != NULL) {
+ v_mag_nos.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ str_mag_nos.unlockBuffer();
+
+ tmp = strtok_r(str_page_nos.lockBuffer(str_page_nos.length()), " ", &pSave);
+ while (tmp != NULL) {
+ v_page_nos.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ str_page_nos.unlockBuffer();
+
+ tmp = strtok_r(str_ttx_langs.lockBuffer(str_ttx_langs.length()), " ", &pSave);
+ while (tmp != NULL) {
+ v_ttx_langs.push_back(String8(tmp));
+ tmp = strtok_r(NULL, " ", &pSave);
+ }
+ str_ttx_langs.unlockBuffer();
+
+
+ for (int i = 0; i < v_ttx_pids.size(); i++) {
+ int ttype = atoi(v_ttx_types[i]);
+ if (ttype == 0x2 || ttype == 0x5) {
+ this->mvSubtitles.push_back(new Subtitle(
+ atoi(v_ttx_pids[i].string()),
+ String8(v_ttx_langs[i]), Subtitle::TYPE_DTV_TELETEXT,
+ atoi(v_mag_nos[i]),
+ atoi(v_page_nos[i])));
+ } else {
+ this->mvTeletexts.push_back(new Teletext(
+ atoi(v_ttx_pids[i]),
+ String8(v_ttx_langs[i]),
+ atoi(v_mag_nos[i]),
+ atoi(v_page_nos[i])));
+ }
+ }
+ */
+ return 0;
}
int CTvProgram::selectProgramInChannelByNumber(int channelID, int num, CTvDatabase::Cursor &c)
{
- String8 cmd = String8("select * from srv_table where db_ts_id = ") + String8::format("%d", channelID) + String8(" and ");
- cmd += String8("chan_num = ") + String8::format("%d", num);
- return CTvDatabase::GetTvDb()->select(cmd, c);
+ String8 cmd = String8("select * from srv_table where db_ts_id = ") + String8::format("%d", channelID) + String8(" and ");
+ cmd += String8("chan_num = ") + String8::format("%d", num);
+ return CTvDatabase::GetTvDb()->select(cmd, c);
}
int CTvProgram::selectProgramInChannelByNumber(int channelID, int major, int minor, CTvDatabase::Cursor &c)
{
- String8 cmd = String8("select * from srv_table where db_ts_id = ") + String8::format("%d", channelID) + String8(" and ");
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
+ String8 cmd = String8("select * from srv_table where db_ts_id = ") + String8::format("%d", channelID) + String8(" and ");
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
- return CTvDatabase::GetTvDb()->select(cmd, c);
+ return CTvDatabase::GetTvDb()->select(cmd, c);
}
/**
@@ -357,55 +357,55 @@ int CTvProgram::selectProgramInChannelByNumber(int channelID, int major, int min
*/
CTvProgram::CTvProgram(int channelID, int type, int num, int skipFlag)
{
- CTvChannel channel;
- int ret = CTvChannel::selectByID(channelID, channel);
- if (ret != 0) {
- //Log.d(TAG, "Cannot add new program, invalid channel id "+channelID);
- this->id = -1;
- } else {
- CTvDatabase::Cursor c ;
- selectProgramInChannelByNumber(channelID, num, c);
-
- if (c.moveToFirst()) {
- /*Construct*/
- CreateFromCursor(c);
- } else {
- String8 tpids = String8(""), ttypes = String8(""), tmagnums = String8(""), tpgnums = String8(""), tlangs = String8("");
- String8 spids = String8(""), stypes = String8(""), scpgids = String8(""), sapgids = String8(""), slangs = String8("");
-
- /*add a new atv program to database*/
- String8 cmd = String8("insert into srv_table(db_net_id,db_ts_id,service_id,src,name,service_type,");
- cmd += String8("eit_schedule_flag,eit_pf_flag,running_status,free_ca_mode,volume,aud_track,vid_pid,");
- cmd += String8("vid_fmt,aud_pids,aud_fmts,aud_langs,skip,lock,chan_num,major_chan_num,");
- cmd += String8("minor_chan_num,access_controlled,hidden,hide_guide,source_id,favor,current_aud,");
- cmd += String8("current_sub,sub_pids,sub_types,sub_composition_page_ids,sub_ancillary_page_ids,sub_langs,");
- cmd += String8("current_ttx,ttx_pids,ttx_types,ttx_magazine_nos,ttx_page_nos,ttx_langs,");
- cmd += String8("db_sat_para_id,scrambled_flag,lcn,hd_lcn,sd_lcn,default_chan_num,chan_order) ");
- cmd += String8("values(-1,") + String8::format("%d", channelID) + String8(",65535,") + String8::format("%d", channel.getMode()) + String8(",'',") + String8::format("%d", type) + String8(",");
- cmd += String8("0,0,0,0,0,0,8191,");
- int chanNum = num;
- int majorNum = 0;
- cmd += String8("-1,'','','',") + String8::format("%d", skipFlag) + String8(",0,") + String8::format("%d", chanNum) + String8(",") + String8::format("%d", majorNum) + String8(",");
- cmd += String8("") + /*num.getMinor()*/String8("0") + String8(",0,0,0,-1,0,-1,");
- cmd += String8("-1,'") + spids + String8("','") + stypes + String8("','") + scpgids + String8("','") + sapgids + String8("','") + slangs + String8("',");
- cmd += String8("-1,'") + tpids + String8("','") + ttypes + String8("','") + tmagnums + String8("','") + tpgnums + String8("','") + tlangs + String8("',");
- cmd += String8("-1,0,-1,-1,-1,-1,0)");
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
-
- CTvDatabase::Cursor cr;
- selectProgramInChannelByNumber(channelID, num, cr);
- if (cr.moveToFirst()) {
- /*Construct*/
- CreateFromCursor(cr);
- } else {
- /*A critical error*/
- //Log.d(TAG, "Cannot add new program, sqlite error");
- this->id = -1;
- }
- cr.close();
- }
- c.close();
- }
+ CTvChannel channel;
+ int ret = CTvChannel::selectByID(channelID, channel);
+ if (ret != 0) {
+ //Log.d(TAG, "Cannot add new program, invalid channel id "+channelID);
+ this->id = -1;
+ } else {
+ CTvDatabase::Cursor c ;
+ selectProgramInChannelByNumber(channelID, num, c);
+
+ if (c.moveToFirst()) {
+ /*Construct*/
+ CreateFromCursor(c);
+ } else {
+ String8 tpids = String8(""), ttypes = String8(""), tmagnums = String8(""), tpgnums = String8(""), tlangs = String8("");
+ String8 spids = String8(""), stypes = String8(""), scpgids = String8(""), sapgids = String8(""), slangs = String8("");
+
+ /*add a new atv program to database*/
+ String8 cmd = String8("insert into srv_table(db_net_id,db_ts_id,service_id,src,name,service_type,");
+ cmd += String8("eit_schedule_flag,eit_pf_flag,running_status,free_ca_mode,volume,aud_track,vid_pid,");
+ cmd += String8("vid_fmt,aud_pids,aud_fmts,aud_langs,skip,lock,chan_num,major_chan_num,");
+ cmd += String8("minor_chan_num,access_controlled,hidden,hide_guide,source_id,favor,current_aud,");
+ cmd += String8("current_sub,sub_pids,sub_types,sub_composition_page_ids,sub_ancillary_page_ids,sub_langs,");
+ cmd += String8("current_ttx,ttx_pids,ttx_types,ttx_magazine_nos,ttx_page_nos,ttx_langs,");
+ cmd += String8("db_sat_para_id,scrambled_flag,lcn,hd_lcn,sd_lcn,default_chan_num,chan_order) ");
+ cmd += String8("values(-1,") + String8::format("%d", channelID) + String8(",65535,") + String8::format("%d", channel.getMode()) + String8(",'',") + String8::format("%d", type) + String8(",");
+ cmd += String8("0,0,0,0,0,0,8191,");
+ int chanNum = num;
+ int majorNum = 0;
+ cmd += String8("-1,'','','',") + String8::format("%d", skipFlag) + String8(",0,") + String8::format("%d", chanNum) + String8(",") + String8::format("%d", majorNum) + String8(",");
+ cmd += String8("") + /*num.getMinor()*/String8("0") + String8(",0,0,0,-1,0,-1,");
+ cmd += String8("-1,'") + spids + String8("','") + stypes + String8("','") + scpgids + String8("','") + sapgids + String8("','") + slangs + String8("',");
+ cmd += String8("-1,'") + tpids + String8("','") + ttypes + String8("','") + tmagnums + String8("','") + tpgnums + String8("','") + tlangs + String8("',");
+ cmd += String8("-1,0,-1,-1,-1,-1,0)");
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
+
+ CTvDatabase::Cursor cr;
+ selectProgramInChannelByNumber(channelID, num, cr);
+ if (cr.moveToFirst()) {
+ /*Construct*/
+ CreateFromCursor(cr);
+ } else {
+ /*A critical error*/
+ //Log.d(TAG, "Cannot add new program, sqlite error");
+ this->id = -1;
+ }
+ cr.close();
+ }
+ c.close();
+ }
}
@@ -415,55 +415,55 @@ CTvProgram::CTvProgram(int channelID, int type, int num, int skipFlag)
*/
CTvProgram::CTvProgram(int channelID, int type, int major, int minor, int skipFlag)
{
- CTvChannel channel;
- int ret = CTvChannel::selectByID(channelID, channel);
- if (ret != 0) {
- //Log.d(TAG, "Cannot add new program, invalid channel id "+channelID);
- this->id = -1;
- } else {
- CTvDatabase::Cursor c ;
- selectProgramInChannelByNumber(channelID, major, minor, c);
-
- if (c.moveToFirst()) {
- /*Construct*/
- CreateFromCursor(c);
- } else {
- String8 tpids = String8(""), ttypes = String8(""), tmagnums = String8(""), tpgnums = String8(""), tlangs = String8("");
- String8 spids = String8(""), stypes = String8(""), scpgids = String8(""), sapgids = String8(""), slangs = String8("");
-
- /*add a new atv program to database*/
- String8 cmd = String8("insert into srv_table(db_net_id,db_ts_id,service_id,src,name,service_type,");
- cmd += String8("eit_schedule_flag,eit_pf_flag,running_status,free_ca_mode,volume,aud_track,vid_pid,");
- cmd += String8("vid_fmt,aud_pids,aud_fmts,aud_langs,skip,lock,chan_num,major_chan_num,");
- cmd += String8("minor_chan_num,access_controlled,hidden,hide_guide,source_id,favor,current_aud,");
- cmd += String8("current_sub,sub_pids,sub_types,sub_composition_page_ids,sub_ancillary_page_ids,sub_langs,");
- cmd += String8("current_ttx,ttx_pids,ttx_types,ttx_magazine_nos,ttx_page_nos,ttx_langs,");
- cmd += String8("db_sat_para_id,scrambled_flag,lcn,hd_lcn,sd_lcn,default_chan_num,chan_order) ");
- cmd += String8("values(-1,") + String8::format("%d", channelID) + String8(",65535,") + String8::format("%d", channel.getMode()) + String8(",'',") + String8::format("%d", type) + String8(",");
- cmd += String8("0,0,0,0,0,0,8191,");
- int chanNum = major << 16 | minor;
- int majorNum = major;
- cmd += String8("-1,'','','',") + String8::format("%d", skipFlag) + String8(",0,") + String8::format("%d", chanNum) + String8(",") + String8::format("%d", majorNum) + String8(",");
- cmd += String8("") + String8::format("%d", minor) + String8(",0,0,0,-1,0,-1,");
- cmd += String8("-1,'") + spids + String8("','") + stypes + String8("','") + scpgids + String8("','") + sapgids + String8("','") + slangs + String8("',");
- cmd += String8("-1,'") + tpids + String8("','") + ttypes + String8("','") + tmagnums + String8("','") + tpgnums + String8("','") + tlangs + String8("',");
- cmd += String8("-1,0,-1,-1,-1,-1,0)");
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
-
- CTvDatabase::Cursor cr;
- selectProgramInChannelByNumber(channelID, major, minor, cr);
- if (cr.moveToFirst()) {
- /*Construct*/
- CreateFromCursor(cr);
- } else {
- /*A critical error*/
- //Log.d(TAG, "Cannot add new program, sqlite error");
- this->id = -1;
- }
- cr.close();
- }
- c.close();
- }
+ CTvChannel channel;
+ int ret = CTvChannel::selectByID(channelID, channel);
+ if (ret != 0) {
+ //Log.d(TAG, "Cannot add new program, invalid channel id "+channelID);
+ this->id = -1;
+ } else {
+ CTvDatabase::Cursor c ;
+ selectProgramInChannelByNumber(channelID, major, minor, c);
+
+ if (c.moveToFirst()) {
+ /*Construct*/
+ CreateFromCursor(c);
+ } else {
+ String8 tpids = String8(""), ttypes = String8(""), tmagnums = String8(""), tpgnums = String8(""), tlangs = String8("");
+ String8 spids = String8(""), stypes = String8(""), scpgids = String8(""), sapgids = String8(""), slangs = String8("");
+
+ /*add a new atv program to database*/
+ String8 cmd = String8("insert into srv_table(db_net_id,db_ts_id,service_id,src,name,service_type,");
+ cmd += String8("eit_schedule_flag,eit_pf_flag,running_status,free_ca_mode,volume,aud_track,vid_pid,");
+ cmd += String8("vid_fmt,aud_pids,aud_fmts,aud_langs,skip,lock,chan_num,major_chan_num,");
+ cmd += String8("minor_chan_num,access_controlled,hidden,hide_guide,source_id,favor,current_aud,");
+ cmd += String8("current_sub,sub_pids,sub_types,sub_composition_page_ids,sub_ancillary_page_ids,sub_langs,");
+ cmd += String8("current_ttx,ttx_pids,ttx_types,ttx_magazine_nos,ttx_page_nos,ttx_langs,");
+ cmd += String8("db_sat_para_id,scrambled_flag,lcn,hd_lcn,sd_lcn,default_chan_num,chan_order) ");
+ cmd += String8("values(-1,") + String8::format("%d", channelID) + String8(",65535,") + String8::format("%d", channel.getMode()) + String8(",'',") + String8::format("%d", type) + String8(",");
+ cmd += String8("0,0,0,0,0,0,8191,");
+ int chanNum = major << 16 | minor;
+ int majorNum = major;
+ cmd += String8("-1,'','','',") + String8::format("%d", skipFlag) + String8(",0,") + String8::format("%d", chanNum) + String8(",") + String8::format("%d", majorNum) + String8(",");
+ cmd += String8("") + String8::format("%d", minor) + String8(",0,0,0,-1,0,-1,");
+ cmd += String8("-1,'") + spids + String8("','") + stypes + String8("','") + scpgids + String8("','") + sapgids + String8("','") + slangs + String8("',");
+ cmd += String8("-1,'") + tpids + String8("','") + ttypes + String8("','") + tmagnums + String8("','") + tpgnums + String8("','") + tlangs + String8("',");
+ cmd += String8("-1,0,-1,-1,-1,-1,0)");
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
+
+ CTvDatabase::Cursor cr;
+ selectProgramInChannelByNumber(channelID, major, minor, cr);
+ if (cr.moveToFirst()) {
+ /*Construct*/
+ CreateFromCursor(cr);
+ } else {
+ /*A critical error*/
+ //Log.d(TAG, "Cannot add new program, sqlite error");
+ this->id = -1;
+ }
+ cr.close();
+ }
+ c.close();
+ }
}
/**
@@ -473,46 +473,46 @@ CTvProgram::CTvProgram(int channelID, int type, int major, int minor, int skipFl
int CTvProgram::selectByID(int id, CTvProgram &prog)
{
- CTvDatabase::Cursor c;
- String8 sql;
- sql = String8("select * from srv_table where srv_table.db_id = ") + String8::format("%d", id);
- CTvDatabase::GetTvDb()->select(sql.string(), c) ;
- if (c.moveToFirst()) {
- prog.CreateFromCursor(c);
- } else {
- c.close();
- return -1;
- }
- c.close();
- return 0;
+ CTvDatabase::Cursor c;
+ String8 sql;
+ sql = String8("select * from srv_table where srv_table.db_id = ") + String8::format("%d", id);
+ CTvDatabase::GetTvDb()->select(sql.string(), c) ;
+ if (c.moveToFirst()) {
+ prog.CreateFromCursor(c);
+ } else {
+ c.close();
+ return -1;
+ }
+ c.close();
+ return 0;
}
int CTvProgram::updateVolComp(int progID, int volValue)
{
- String8 cmd = String8("update srv_table set volume = ") + String8::format("%d", volValue) +
- String8(" where srv_table.db_id = ") + String8::format("%d", progID);
- LOGD("%s, cmd = %s\n", "TV", cmd.string());
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ String8 cmd = String8("update srv_table set volume = ") + String8::format("%d", volValue) +
+ String8(" where srv_table.db_id = ") + String8::format("%d", progID);
+ LOGD("%s, cmd = %s\n", "TV", cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
- return 0;
+ return 0;
}
int CTvProgram::getChannel(CTvChannel &c)
{
- return CTvChannel::selectByID(channelID, c);
+ return CTvChannel::selectByID(channelID, c);
}
int CTvProgram::upDateChannel(CTvChannel &c, int std, int Freq, int fineFreq)
{
- return CTvChannel::updateByID(channelID, std, Freq, fineFreq);
+ return CTvChannel::updateByID(channelID, std, Freq, fineFreq);
}
int CTvProgram::deleteChannelsProgram(CTvChannel &c)
{
- String8 cmd;
- cmd = String8("delete from srv_table where srv_table.db_ts_id = ") + String8::format("%d", c.getID());
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
- return 0;
+ String8 cmd;
+ cmd = String8("delete from srv_table where srv_table.db_ts_id = ") + String8::format("%d", c.getID());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ return 0;
}
@@ -521,31 +521,31 @@ int CTvProgram::deleteChannelsProgram(CTvChannel &c)
*/
int CTvProgram::selectByNumber(int type, int num, CTvProgram &prog)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("select * from srv_table where ");
- if (type != TYPE_UNKNOWN) {
- if (type == TYPE_DTV) {
- cmd += String8("(service_type = ") + String8::format("%d", TYPE_DTV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") and ");
- } else {
- cmd += String8("service_type = ") + String8::format("%d", type) + String8(" and ");
- }
- }
+ cmd = String8("select * from srv_table where ");
+ if (type != TYPE_UNKNOWN) {
+ if (type == TYPE_DTV) {
+ cmd += String8("(service_type = ") + String8::format("%d", TYPE_DTV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") and ");
+ } else {
+ cmd += String8("service_type = ") + String8::format("%d", type) + String8(" and ");
+ }
+ }
- cmd += String8("chan_num = ") + String8::format("%d", num);
+ cmd += String8("chan_num = ") + String8::format("%d", num);
- CTvDatabase::Cursor c;
- CTvDatabase::GetTvDb()->select(cmd, c);
+ CTvDatabase::Cursor c;
+ CTvDatabase::GetTvDb()->select(cmd, c);
- if (c.moveToFirst()) {
- prog.CreateFromCursor(c);
- } else {
- c.close();
- return -1;
- }
- c.close();
+ if (c.moveToFirst()) {
+ prog.CreateFromCursor(c);
+ } else {
+ c.close();
+ return -1;
+ }
+ c.close();
- return 0;
+ return 0;
}
/**
@@ -553,60 +553,60 @@ int CTvProgram::selectByNumber(int type, int num, CTvProgram &prog)
*/
int CTvProgram::selectByNumber(int type, int major, int minor, CTvProgram &prog, int minor_check)
{
- String8 cmd;
-
- cmd = String8("select * from srv_table where ");
- if (type != TYPE_UNKNOWN) {
- if (type == TYPE_DTV) {
- cmd += String8("(service_type = ") + String8::format("%d", TYPE_TV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") and ");
- } else {
- cmd += String8("service_type = ") + String8::format("%d", type) + String8(" and ");
- }
- }
-
- if (minor < 0) {
- /*recursive call*/
- /*select dtv program first*/
- //showbo
- int ret = selectByNumber(TYPE_DTV, major, 1, prog, MINOR_CHECK_NEAREST_UP);
- if (ret != 0) {
- /*then try atv program*/
- selectByNumber(TYPE_ATV, major, 0 , prog, MINOR_CHECK_NONE);
- }
- return 0;
- } else if (minor >= 1) {
- if (minor_check == MINOR_CHECK_UP) {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num >= ") + String8::format("%d", minor) + String8(" ");
- cmd += String8("order by minor_chan_num DESC limit 1");
- } else if (minor_check == MINOR_CHECK_DOWN) {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num <= ") + String8::format("%d", minor) + String8(" ");
- cmd += String8("order by minor_chan_num limit 1");
- } else if (minor_check == MINOR_CHECK_NEAREST_UP) {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num >= ") + String8::format("%d", minor) + String8(" ");
- cmd += String8("order by minor_chan_num limit 1");
- } else if (minor_check == MINOR_CHECK_NEAREST_DOWN) {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num <= ") + String8::format("%d", minor) + String8(" ");
- cmd += String8("order by minor_chan_num DESC limit 1");
- } else {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
- }
- } else {
- cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
- }
-
-
- CTvDatabase::Cursor c;
- CTvDatabase::GetTvDb()->select(cmd, c);
-
- if (c.moveToFirst()) {
- prog.CreateFromCursor(c);
- } else {
- c.close();
- return -1;
- }
- c.close();
-
- return 0;
+ String8 cmd;
+
+ cmd = String8("select * from srv_table where ");
+ if (type != TYPE_UNKNOWN) {
+ if (type == TYPE_DTV) {
+ cmd += String8("(service_type = ") + String8::format("%d", TYPE_TV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") and ");
+ } else {
+ cmd += String8("service_type = ") + String8::format("%d", type) + String8(" and ");
+ }
+ }
+
+ if (minor < 0) {
+ /*recursive call*/
+ /*select dtv program first*/
+ //showbo
+ int ret = selectByNumber(TYPE_DTV, major, 1, prog, MINOR_CHECK_NEAREST_UP);
+ if (ret != 0) {
+ /*then try atv program*/
+ selectByNumber(TYPE_ATV, major, 0 , prog, MINOR_CHECK_NONE);
+ }
+ return 0;
+ } else if (minor >= 1) {
+ if (minor_check == MINOR_CHECK_UP) {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num >= ") + String8::format("%d", minor) + String8(" ");
+ cmd += String8("order by minor_chan_num DESC limit 1");
+ } else if (minor_check == MINOR_CHECK_DOWN) {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num <= ") + String8::format("%d", minor) + String8(" ");
+ cmd += String8("order by minor_chan_num limit 1");
+ } else if (minor_check == MINOR_CHECK_NEAREST_UP) {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num >= ") + String8::format("%d", minor) + String8(" ");
+ cmd += String8("order by minor_chan_num limit 1");
+ } else if (minor_check == MINOR_CHECK_NEAREST_DOWN) {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num <= ") + String8::format("%d", minor) + String8(" ");
+ cmd += String8("order by minor_chan_num DESC limit 1");
+ } else {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
+ }
+ } else {
+ cmd += String8("major_chan_num = ") + String8::format("%d", major) + String8(" and minor_chan_num = ") + String8::format("%d", minor);
+ }
+
+
+ CTvDatabase::Cursor c;
+ CTvDatabase::GetTvDb()->select(cmd, c);
+
+ if (c.moveToFirst()) {
+ prog.CreateFromCursor(c);
+ } else {
+ c.close();
+ return -1;
+ }
+ c.close();
+
+ return 0;
}
@@ -618,133 +618,133 @@ int CTvProgram::selectByNumber(int type, int major, int minor, CTvProgram &prog,
int CTvProgram::selectByChannel(int channelID, int type, Vector<sp<CTvProgram> > &out)
{
- //Vector<CTvProgram*> vp;
- String8 cmd = String8("select * from srv_table ");
+ //Vector<CTvProgram*> vp;
+ String8 cmd = String8("select * from srv_table ");
- if (type == TYPE_DTV) {
- cmd += String8("where (service_type = ") + String8::format("%d", TYPE_TV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") ");
- } else if (type != TYPE_UNKNOWN) {
- cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
- }
+ if (type == TYPE_DTV) {
+ cmd += String8("where (service_type = ") + String8::format("%d", TYPE_TV) + String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) + String8(") ");
+ } else if (type != TYPE_UNKNOWN) {
+ cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
+ }
- cmd += String8(" and db_ts_id = ") + String8::format("%d", channelID) + String8(" order by chan_order");
+ cmd += String8(" and db_ts_id = ") + String8::format("%d", channelID) + String8(" order by chan_order");
- CTvDatabase::Cursor c;
- int ret = CTvDatabase::GetTvDb()->select(cmd, c);
+ CTvDatabase::Cursor c;
+ int ret = CTvDatabase::GetTvDb()->select(cmd, c);
- LOGD("selectByChannel select ret = %d", ret);
+ LOGD("selectByChannel select ret = %d", ret);
- if (c.moveToFirst()) {
- do {
- out.add(new CTvProgram(c));
- } while (c.moveToNext());
- }
- c.close();
+ if (c.moveToFirst()) {
+ do {
+ out.add(new CTvProgram(c));
+ } while (c.moveToNext());
+ }
+ c.close();
- return 0;
+ return 0;
}
void CTvProgram::deleteProgram(int progId)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("delete from srv_table where srv_table.db_id = ") + String8::format("%d", progId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ cmd = String8("delete from srv_table where srv_table.db_id = ") + String8::format("%d", progId);
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
int CTvProgram::CleanAllProgramBySrvType(int srvType)
{
- String8 cmd = String8("delete from srv_table where service_type = ") + String8::format("%d", srvType);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
- return 0;
+ String8 cmd = String8("delete from srv_table where service_type = ") + String8::format("%d", srvType);
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ return 0;
}
int CTvProgram::selectByType(int type, int skip, Vector<sp<CTvProgram> > &out)
{
- String8 cmd = String8("select * from srv_table ");
- LOGD("%s, type= %d\n", "TV", (int)type);
+ String8 cmd = String8("select * from srv_table ");
+ LOGD("%s, type= %d\n", "TV", (int)type);
- if (type == TYPE_UNKNOWN) {
- cmd += String8("where (service_type = ") + String8::format("%d", TYPE_ATV) +
- String8(" or service_type = ") + String8::format("%d", TYPE_DTV) +
- String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) +
- String8(") ");
- } else {
- cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
- }
+ if (type == TYPE_UNKNOWN) {
+ cmd += String8("where (service_type = ") + String8::format("%d", TYPE_ATV) +
+ String8(" or service_type = ") + String8::format("%d", TYPE_DTV) +
+ String8(" or service_type = ") + String8::format("%d", TYPE_RADIO) +
+ String8(") ");
+ } else {
+ cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
+ }
- if (skip == PROGRAM_SKIP_NO || skip == PROGRAM_SKIP_YES)
- cmd += String8(" and skip = ") + String8::format("%d", skip) + String8(" ");
+ if (skip == PROGRAM_SKIP_NO || skip == PROGRAM_SKIP_YES)
+ cmd += String8(" and skip = ") + String8::format("%d", skip) + String8(" ");
- if (type == TYPE_DTV || type == TYPE_RADIO) {
- cmd += String8(" order by db_ts_id");
- } else {
- cmd += String8(" order by chan_order");
- }
+ if (type == TYPE_DTV || type == TYPE_RADIO) {
+ cmd += String8(" order by db_ts_id");
+ } else {
+ cmd += String8(" order by chan_order");
+ }
- CTvDatabase::Cursor c;
- int ret = CTvDatabase::GetTvDb()->select(cmd, c);
+ CTvDatabase::Cursor c;
+ int ret = CTvDatabase::GetTvDb()->select(cmd, c);
- LOGD("selectByType select ret = %d", ret);
+ LOGD("selectByType select ret = %d", ret);
- if (c.moveToFirst()) {
- do {
- out.add(new CTvProgram(c));
- } while (c.moveToNext());
- }
- c.close();
+ if (c.moveToFirst()) {
+ do {
+ out.add(new CTvProgram(c));
+ } while (c.moveToNext());
+ }
+ c.close();
- return 0;
+ return 0;
}
int CTvProgram::selectByChanID(int type, int skip, Vector < sp < CTvProgram > > &out)
{
- String8 cmd = String8("select * from srv_table ");
+ String8 cmd = String8("select * from srv_table ");
- if (type == TYPE_UNKNOWN) {
- cmd += String8("where (service_type = ") + String8::format("%d", TYPE_ATV) +
- String8(" or service_type = ") + String8::format("%d", TYPE_DTV) +
- String8(") ");
- } else {
- cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
- }
+ if (type == TYPE_UNKNOWN) {
+ cmd += String8("where (service_type = ") + String8::format("%d", TYPE_ATV) +
+ String8(" or service_type = ") + String8::format("%d", TYPE_DTV) +
+ String8(") ");
+ } else {
+ cmd += String8("where service_type = ") + String8::format("%d", type) + String8(" ");
+ }
- if (skip == PROGRAM_SKIP_NO || skip == PROGRAM_SKIP_YES)
- cmd += String8(" and skip = ") + String8::format("%d", PROGRAM_SKIP_NO) +
- String8(" or skip = ") + String8::format("%d", PROGRAM_SKIP_YES) + String8(" ");
+ if (skip == PROGRAM_SKIP_NO || skip == PROGRAM_SKIP_YES)
+ cmd += String8(" and skip = ") + String8::format("%d", PROGRAM_SKIP_NO) +
+ String8(" or skip = ") + String8::format("%d", PROGRAM_SKIP_YES) + String8(" ");
- cmd += String8(" order by db_id");
+ cmd += String8(" order by db_id");
- CTvDatabase::Cursor c;
- int ret = CTvDatabase::GetTvDb()->select(cmd, c);
+ CTvDatabase::Cursor c;
+ int ret = CTvDatabase::GetTvDb()->select(cmd, c);
- if (c.moveToFirst()) {
- do {
- out.add(new CTvProgram(c));
- } while (c.moveToNext());
- }
- c.close();
+ if (c.moveToFirst()) {
+ do {
+ out.add(new CTvProgram(c));
+ } while (c.moveToNext());
+ }
+ c.close();
- return 0;
+ return 0;
}
int CTvProgram::selectAll(bool no_skip, Vector<sp<CTvProgram> > &out)
{
- return selectByType(TYPE_UNKNOWN, no_skip, out);
+ return selectByType(TYPE_UNKNOWN, no_skip, out);
}
Vector<CTvProgram> CTvProgram::selectByChannel(int channelID)
{
- Vector<CTvProgram> vProg;
- return vProg;
+ Vector<CTvProgram> vProg;
+ return vProg;
}
Vector<CTvProgram> CTvProgram::selectByName(int name)
{
- Vector<CTvProgram> vProg;
- return vProg;
+ Vector<CTvProgram> vProg;
+ return vProg;
}
void CTvProgram::tvProgramDelByChannelID(int channelID)
@@ -755,11 +755,11 @@ void CTvProgram::tvProgramDelByChannelID(int channelID)
String8 CTvProgram::getName()
{
- return name;
+ return name;
}
int CTvProgram::getProgSkipFlag()
{
- return skip;
+ return skip;
}
/**
@@ -769,155 +769,155 @@ int CTvProgram::getProgSkipFlag()
*/
int CTvProgram::getCurrentAudio(String8 defaultLang)
{
- CTvDatabase::Cursor c;
- String8 cmd;
- cmd = String8("select current_aud from srv_table where db_id = ") + String8::format("%d", this->id);
- int ret = CTvDatabase::GetTvDb()->select(cmd, c);
- LOGD("getCurrentAudio a size = %d", mvAudios.size());
- int id = 0;
- if (c.moveToFirst()) {
- id = c.getInt(0);
- LOGD("getCurrentAudio a id = %d", id);
- if (id < 0 && mvAudios.size() > 0) {
- LOGD("getCurrentAudio defaultLang.isEmpty() =%s= %d", defaultLang.string(), defaultLang.isEmpty());
- if (!defaultLang.isEmpty()) {
- for (int i = 0; i < mvAudios.size(); i++) {
- LOGD("getCurrentAudio a mvAudios[i] = %d", mvAudios[i]);
- if (mvAudios[i]->getLang() == defaultLang) {
- id = i;
- break;
- }
- }
- }
-
- if (id < 0) {
- /* still not found, using the first */
- id = 0;
- }
- }
- }
- LOGD("getCurrentAudio a idsss = %d", id);
- c.close();
-
- return id;
+ CTvDatabase::Cursor c;
+ String8 cmd;
+ cmd = String8("select current_aud from srv_table where db_id = ") + String8::format("%d", this->id);
+ int ret = CTvDatabase::GetTvDb()->select(cmd, c);
+ LOGD("getCurrentAudio a size = %d", mvAudios.size());
+ int id = 0;
+ if (c.moveToFirst()) {
+ id = c.getInt(0);
+ LOGD("getCurrentAudio a id = %d", id);
+ if (id < 0 && mvAudios.size() > 0) {
+ LOGD("getCurrentAudio defaultLang.isEmpty() =%s= %d", defaultLang.string(), defaultLang.isEmpty());
+ if (!defaultLang.isEmpty()) {
+ for (int i = 0; i < mvAudios.size(); i++) {
+ LOGD("getCurrentAudio a mvAudios[i] = %d", mvAudios[i]);
+ if (mvAudios[i]->getLang() == defaultLang) {
+ id = i;
+ break;
+ }
+ }
+ }
+
+ if (id < 0) {
+ /* still not found, using the first */
+ id = 0;
+ }
+ }
+ }
+ LOGD("getCurrentAudio a idsss = %d", id);
+ c.close();
+
+ return id;
}
int CTvProgram::getAudioChannel()
{
- return audioTrack;
+ return audioTrack;
}
int CTvProgram::updateAudioChannel(int progId, int ch)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set aud_track =") + "\'" + String8::format("%d", ch) + "\'"
- + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
+ cmd = String8("update srv_table set aud_track =") + "\'" + String8::format("%d", ch) + "\'"
+ + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
- return CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ return CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
int CTvProgram::getSubtitleIndex(int progId)
{
- CTvDatabase::Cursor c;
- String8 cmd = String8("select current_sub from srv_table where db_id = ") + String8::format("%d", progId);
- int ret = CTvDatabase::GetTvDb()->select(cmd, c);
- if (c.moveToFirst()) {
- return c.getInt(0);
- } else {
- return -1;
- }
+ CTvDatabase::Cursor c;
+ String8 cmd = String8("select current_sub from srv_table where db_id = ") + String8::format("%d", progId);
+ int ret = CTvDatabase::GetTvDb()->select(cmd, c);
+ if (c.moveToFirst()) {
+ return c.getInt(0);
+ } else {
+ return -1;
+ }
}
int CTvProgram::setSubtitleIndex(int progId, int index)
{
- String8 cmd = String8("update srv_table set current_sub = ") + String8::format("%d", index) + String8(" where db_id = ") + String8::format("%d", progId);
- return CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ String8 cmd = String8("update srv_table set current_sub = ") + String8::format("%d", index) + String8(" where db_id = ") + String8::format("%d", progId);
+ return CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
int CTvProgram::getCurrAudioTrackIndex()
{
- int audTrackIdx = -1;
+ int audTrackIdx = -1;
- if (-1 == currAudTrackIndex) { // no set field "current_aud"
- audTrackIdx = getCurrentAudio(String8("eng"));
- setCurrAudioTrackIndex(this->id, audTrackIdx);
- } else {
- audTrackIdx = currAudTrackIndex;
- }
+ if (-1 == currAudTrackIndex) { // no set field "current_aud"
+ audTrackIdx = getCurrentAudio(String8("eng"));
+ setCurrAudioTrackIndex(this->id, audTrackIdx);
+ } else {
+ audTrackIdx = currAudTrackIndex;
+ }
- return audTrackIdx;
+ return audTrackIdx;
}
void CTvProgram::setCurrAudioTrackIndex(int programId, int audioIndex)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set current_aud = ")
- + String8::format("%d", audioIndex) + String8(" where srv_table.db_id = ") + String8::format("%d", programId);
+ cmd = String8("update srv_table set current_aud = ")
+ + String8::format("%d", audioIndex) + String8(" where srv_table.db_id = ") + String8::format("%d", programId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
void CTvProgram::setFavoriteFlag(int progId, bool bFavor)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set favor = ")
- + String8::format("%d", bFavor ? 1 : 0) + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
+ cmd = String8("update srv_table set favor = ")
+ + String8::format("%d", bFavor ? 1 : 0) + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
void CTvProgram::setSkipFlag(int progId, bool bSkipFlag)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set skip = ") + String8::format("%d", bSkipFlag ? 1 : 0)
- + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
+ cmd = String8("update srv_table set skip = ") + String8::format("%d", bSkipFlag ? 1 : 0)
+ + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
void CTvProgram::updateProgramName(int progId, String8 strName)
{
- String8 newName = String8("xxx") + strName;
- String8 cmd;
+ String8 newName = String8("xxx") + strName;
+ String8 cmd;
- cmd = String8("update srv_table set name =") + "\'" + String8::format("%s", newName.string()) + "\'"
- + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
+ cmd = String8("update srv_table set name =") + "\'" + String8::format("%s", newName.string()) + "\'"
+ + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
void CTvProgram::swapChanOrder(int ProgId1, int chanOrderNum1, int ProgId2, int chanOrderNum2)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set chan_order = ") + String8::format("%d", chanOrderNum2)
- + String8(" where db_id = ") + String8::format("%d", ProgId1);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ cmd = String8("update srv_table set chan_order = ") + String8::format("%d", chanOrderNum2)
+ + String8(" where db_id = ") + String8::format("%d", ProgId1);
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
- String8 cmd2;
- cmd2 = String8("update srv_table set chan_order = ") + String8::format("%d", chanOrderNum1)
- + String8(" where db_id = ") + String8::format("%d", ProgId2);
- CTvDatabase::GetTvDb()->exeSql(cmd2.string());
+ String8 cmd2;
+ cmd2 = String8("update srv_table set chan_order = ") + String8::format("%d", chanOrderNum1)
+ + String8(" where db_id = ") + String8::format("%d", ProgId2);
+ CTvDatabase::GetTvDb()->exeSql(cmd2.string());
}
void CTvProgram::setLockFlag(int progId, bool bLockFlag)
{
- String8 cmd;
+ String8 cmd;
- cmd = String8("update srv_table set lock = ") + String8::format("%d", bLockFlag ? 1 : 0)
- + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
+ cmd = String8("update srv_table set lock = ") + String8::format("%d", bLockFlag ? 1 : 0)
+ + String8(" where srv_table.db_id = ") + String8::format("%d", progId);
- CTvDatabase::GetTvDb()->exeSql(cmd.string());
+ CTvDatabase::GetTvDb()->exeSql(cmd.string());
}
bool CTvProgram::getLockFlag()
{
- return lock;
+ return lock;
}