DVBCore  17.9.0
Open Source DVB Engine
 All Data Structures Files Functions Typedefs Macros Pages
Macros | Functions
ap_dbxml.c File Reference

Database XML import/export. More...

#include <string.h>
#include <stdio.h>
#include <libxml/xmlwriter.h>
#include <libxml/xmlreader.h>
#include "techtype.h"
#include "dbgfuncs.h"
#include "stbhwos.h"
#include "stbuni.h"
#include "stbdpc.h"
#include "ap_cfg.h"
#include "ap_dbacc.h"
#include "ap_tmr.h"
#include "ap_dbdef.h"
#include "dba.h"

Macros

#define DBG_XML(X)
 
#define XMLENCODING   "utf-8"
 
#define XMLTAG_SERVICE_DB   (xmlChar *)"dvb_records"
 
#define XMLTAG_TYPE   (xmlChar *)"type"
 
#define XMLTAG_NAME   (xmlChar *)"name"
 
#define XMLTAG_VERSION   (xmlChar *)"version"
 
#define XMLTAG_NET_ID   (xmlChar *)"net_id"
 
#define XMLTAG_ORIG_NET_ID   (xmlChar *)"orig_net_id"
 
#define XMLTAG_TRAN_ID   (xmlChar *)"tran_id"
 
#define XMLTAG_SERV_ID   (xmlChar *)"serv_id"
 
#define XMLTAG_OFF   (xmlChar *)"off"
 
#define XMLTAG_ON   (xmlChar *)"on"
 
#define XMLTAG_AUTO   (xmlChar *)"auto"
 
#define XMLTAG_0   (xmlChar *)"0"
 
#define XMLTAG_1   (xmlChar *)"1"
 
#define XMLTAG_2   (xmlChar *)"2"
 
#define XMLTAG_4   (xmlChar *)"4"
 
#define XMLTAG_5   (xmlChar *)"5"
 
#define XMLTAG_6   (xmlChar *)"6"
 
#define XMLTAG_7   (xmlChar *)"7"
 
#define XMLTAG_8   (xmlChar *)"8"
 
#define XMLTAG_10   (xmlChar *)"10"
 
#define XMLTAG_16   (xmlChar *)"16"
 
#define XMLTAG_32   (xmlChar *)"32"
 
#define XMLTAG_64   (xmlChar *)"64"
 
#define XMLTAG_128   (xmlChar *)"128"
 
#define XMLTAG_A   (xmlChar *)"a"
 
#define XMLTAG_B   (xmlChar *)"b"
 
#define XMLTAG_C   (xmlChar *)"c"
 
#define XMLTAG_D   (xmlChar *)"d"
 
#define XMLTAG_LNB   (xmlChar *)"lnb"
 
#define XMLTAG_LNB_POWER   (xmlChar *)"power"
 
#define XMLTAG_LNB_IS22K   (xmlChar *)"is22k"
 
#define XMLTAG_LNB_IS12V   (xmlChar *)"is12v"
 
#define XMLTAG_LNB_ISPULSEPOS   (xmlChar *)"pulse_pos"
 
#define XMLTAG_LNB_ISDISEQCPOS   (xmlChar *)"diseqc_pos"
 
#define XMLTAG_LNB_DISEQC_TONE   (xmlChar *)"diseqc_tone"
 
#define XMLTAG_LNB_CSWITCH   (xmlChar *)"cswitch"
 
#define XMLTAG_LNB_USWITCH   (xmlChar *)"uswitch"
 
#define XMLTAG_LNB_ISSMATV   (xmlChar *)"issmatv"
 
#define XMLTAG_LNB_DISEQC_REPEATS   (xmlChar *)"repeats"
 
#define XMLTAG_LNB_UNICABLE_IF   (xmlChar *)"unicable_if"
 
#define XMLTAG_LNB_UNICABLE_CHAN   (xmlChar *)"unicable_chan"
 
#define XMLTAG_LNB_SINGLE   (xmlChar *)"single"
 
#define XMLTAG_LNB_UNIVERSAL   (xmlChar *)"universal"
 
#define XMLTAG_LNB_UNICABLE   (xmlChar *)"unicable"
 
#define XMLTAG_LNB_USER_DEFINED   (xmlChar *)"user_defined"
 
#define XMLTAG_LNB_BAND   (xmlChar *)"lnb_band"
 
#define XMLTAG_LNB_POLARITY   (xmlChar *)"polarity"
 
#define XMLTAG_LNB_BAND_MIN_FREQ   (xmlChar *)"min_frequency"
 
#define XMLTAG_LNB_BAND_MAX_FREQ   (xmlChar *)"max_frequency"
 
#define XMLTAG_LNB_BAND_LO_FREQ   (xmlChar *)"lo_frequency"
 
#define XMLTAG_LNB_BAND_VOLTAGE   (xmlChar *)"lnb_voltage"
 
#define XMLTAG_LNB_BAND_22KHZ   (xmlChar *)"22_khz"
 
#define XMLTAG_LNB_BAND_14V   (xmlChar *)"14V"
 
#define XMLTAG_LNB_BAND_18V   (xmlChar *)"18V"
 
#define XMLTAG_SATELLITE   (xmlChar *)"satellite"
 
#define XMLTAG_SAT_DISHPOS   (xmlChar *)"dish_pos"
 
#define XMLTAG_SAT_LONGPOS   (xmlChar *)"long_pos"
 
#define XMLTAG_SAT_EASTWEST   (xmlChar *)"east_west"
 
#define XMLTAG_NETWORK   (xmlChar *)"network"
 
#define XMLTAG_PROFILETYPE   (xmlChar *)"profile_type"
 
#define XMLTAG_PROFILE_BROADCAST   (xmlChar *)"broadcast"
 
#define XMLTAG_PROFILE_CIPLUS   (xmlChar *)"ciplus"
 
#define XMLTAG_SAT_TRANSPORT   (xmlChar *)"sat_transport"
 
#define XMLTAG_CAB_TRANSPORT   (xmlChar *)"cab_transport"
 
#define XMLTAG_TERR_TRANSPORT   (xmlChar *)"terr_transport"
 
#define XMLTAG_ANALOG_TRANSPORT   (xmlChar *)"analog_transport"
 
#define XMLTAG_TRAN_FREQUENCY   (xmlChar *)"freq"
 
#define XMLTAG_TRAN_SKEW   (xmlChar *)"skew"
 
#define XMLTAG_TRAN_SYMRATE   (xmlChar *)"symrate"
 
#define XMLTAG_TRAN_POLARITY   (xmlChar *)"polarity"
 
#define XMLTAG_TRAN_FECCODE   (xmlChar *)"fec_code"
 
#define XMLTAG_TRAN_FECTYPE   (xmlChar *)"fec_type"
 
#define XMLTAG_TRAN_MODULATION   (xmlChar *)"modulation"
 
#define XMLTAG_TRAN_DVBS2   (xmlChar *)"dvb_s2"
 
#define XMLTAG_TRAN_MODE   (xmlChar *)"mode"
 
#define XMLTAG_TRAN_BWIDTH   (xmlChar *)"bwidth"
 
#define XMLTAG_TRAN_TERRTYPE   (xmlChar *)"terr_type"
 
#define XMLTAG_TRAN_PLPID   (xmlChar *)"plp_id"
 
#define XMLTAG_TRAN_OFFSET   (xmlChar *)"offset"
 
#define XMLTAG_TRAN_CONSTELLATION   (xmlChar *)"const"
 
#define XMLTAG_TRAN_HIERARCHY   (xmlChar *)"hier"
 
#define XMLTAG_TRAN_LPCODE   (xmlChar *)"lp_code"
 
#define XMLTAG_TRAN_HPCODE   (xmlChar *)"hp_code"
 
#define XMLTAG_TRAN_GUARDINT   (xmlChar *)"guard_int"
 
#define XMLTAG_TRAN_VTYPE   (xmlChar *)"vtype"
 
#define XMLTAG_HORIZONTAL   (xmlChar *)"horizontal"
 
#define XMLTAG_VERTICAL   (xmlChar *)"vertical"
 
#define XMLTAG_LEFT   (xmlChar *)"left"
 
#define XMLTAG_RIGHT   (xmlChar *)"right"
 
#define XMLTAG_1_2   (xmlChar *)"1_2"
 
#define XMLTAG_1_3   (xmlChar *)"1_3"
 
#define XMLTAG_1_4   (xmlChar *)"1_4"
 
#define XMLTAG_1_8   (xmlChar *)"1_8"
 
#define XMLTAG_1_16   (xmlChar *)"1_16"
 
#define XMLTAG_1_32   (xmlChar *)"1_32"
 
#define XMLTAG_1_128   (xmlChar *)"1_128"
 
#define XMLTAG_2_3   (xmlChar *)"2_3"
 
#define XMLTAG_2_5   (xmlChar *)"2_5"
 
#define XMLTAG_3_4   (xmlChar *)"3_4"
 
#define XMLTAG_5_6   (xmlChar *)"5_6"
 
#define XMLTAG_7_8   (xmlChar *)"7_8"
 
#define XMLTAG_8_9   (xmlChar *)"8_9"
 
#define XMLTAG_9_10   (xmlChar *)"9_10"
 
#define XMLTAG_19_128   (xmlChar *)"19_128"
 
#define XMLTAG_19_256   (xmlChar *)"19_256"
 
#define XMLTAG_FEC_DVBS1   (xmlChar *)"dvbs1"
 
#define XMLTAG_FEC_DVBS2   (xmlChar *)"dvbs2"
 
#define XMLTAG_QPSK   (xmlChar *)"qpsk"
 
#define XMLTAG_8PSK   (xmlChar *)"8psk"
 
#define XMLTAG_16QAM   (xmlChar *)"16qam"
 
#define XMLTAG_QAM4   (xmlChar *)"qam4"
 
#define XMLTAG_QAM8   (xmlChar *)"qam8"
 
#define XMLTAG_QAM16   (xmlChar *)"qam16"
 
#define XMLTAG_QAM32   (xmlChar *)"qam32"
 
#define XMLTAG_QAM64   (xmlChar *)"qam64"
 
#define XMLTAG_QAM128   (xmlChar *)"qam128"
 
#define XMLTAG_QAM256   (xmlChar *)"qam256"
 
#define XMLTAG_DVBT   (xmlChar *)"dvbt"
 
#define XMLTAG_DVBT2   (xmlChar *)"dvbt2"
 
#define XMLTAG_SERVICE   (xmlChar *)"service"
 
#define XMLTAG_SERV_LCN   (xmlChar *)"serv_lcn"
 
#define XMLTAG_SERV_ALLOCLCN   (xmlChar *)"alloc_lcn"
 
#define XMLTAG_SERV_FAVGROUPS   (xmlChar *)"fav_groups"
 
#define XMLTAG_SERV_HIDDEN   (xmlChar *)"hidden"
 
#define XMLTAG_SERV_SELECTABLE   (xmlChar *)"selectable"
 
#define XMLTAG_SERV_LOCKED   (xmlChar *)"locked"
 
#define XMLTAG_SERV_SCHED_DISABLED   (xmlChar *)"sched_disabled"
 
#define XMLTAG_SERV_PF_DISABLED   (xmlChar *)"pf_disabled"
 
#define XMLTAG_SERV_EDIT_LCN   (xmlChar *)"edit_lcn"
 
#define XMLTAG_SERV_FREESAT_ID   (xmlChar *)"freesat_id"
 
#define XMLTAG_SERV_REGION_ID   (xmlChar *)"region_id"
 
#define XMLTAG_TV   (xmlChar *)"tv"
 
#define XMLTAG_RADIO   (xmlChar *)"radio"
 
#define XMLTAG_AVC_RADIO   (xmlChar *)"avc_radio"
 
#define XMLTAG_DATA   (xmlChar *)"data"
 
#define XMLTAG_MPEG2_HD   (xmlChar *)"mpeg2_hd"
 
#define XMLTAG_AVC_SD_TV   (xmlChar *)"avc_sd_tv"
 
#define XMLTAG_HD_TV   (xmlChar *)"hd_tv"
 
#define XMLTAG_UHD_TV   (xmlChar *)"uhd_tv"
 
#define XMLTAG_ANALOG   (xmlChar *)"analog"
 
#define XMLTAG_FAVLIST   (xmlChar *)"favlist"
 
#define XMLTAG_FAVSERV   (xmlChar *)"favserv"
 
#define XMLTAG_ID   (xmlChar *)"id"
 
#define XMLTAG_INDEX   (xmlChar *)"index"
 
#define XMLTAG_USERDATA   (xmlChar *)"userdata"
 
#define XMLTAG_CRID   (xmlChar *)"crid"
 
#define XMLTAG_EIT_DATE   (xmlChar *)"eit_date"
 
#define XMLTAG_SERIES   (xmlChar *)"series"
 
#define XMLTAG_RECOMMENDED   (xmlChar *)"recommended"
 
#define XMLTAG_DATETIME   (xmlChar *)"datetime"
 
#define XMLTAG_PROG_CRID   (xmlChar *)"prog_crid"
 
#define XMLTAG_TIMER   (xmlChar *)"timer"
 
#define XMLTAG_HANDLE   (xmlChar *)"handle"
 
#define XMLTAG_TIMER_ALARM   (xmlChar *)"alarm"
 
#define XMLTAG_TIMER_SLEEP   (xmlChar *)"sleep"
 
#define XMLTAG_TIMER_PVR_RECORD   (xmlChar *)"pvr_rec"
 
#define XMLTAG_TIMER_PRIVATE   (xmlChar *)"private"
 
#define XMLTAG_FREQ   (xmlChar *)"freq"
 
#define XMLTAG_TIMER_ONCE   (xmlChar *)"once"
 
#define XMLTAG_TIMER_WEEKLY   (xmlChar *)"weekly"
 
#define XMLTAG_TIMER_WEEKENDDAYS   (xmlChar *)"weekenddays"
 
#define XMLTAG_TIMER_WEEKDAYS   (xmlChar *)"weekdays"
 
#define XMLTAG_TIMER_DAILY   (xmlChar *)"daily"
 
#define XMLTAG_TIMER_HOURLY   (xmlChar *)"hourly"
 
#define XMLTAG_MISSED   (xmlChar *)"missed"
 
#define XMLTAG_CHANGESERVICE   (xmlChar *)"change"
 
#define XMLTAG_RAMPVOLUME   (xmlChar *)"volume"
 
#define XMLTAG_DURATION   (xmlChar *)"duration"
 
#define XMLTAG_TRIGGERED   (xmlChar *)"triggered"
 
#define XMLTAG_EVENT_ID   (xmlChar *)"event"
 
#define XMLTAG_DISK_ID   (xmlChar *)"disk"
 
#define XMLTAG_NOTIFY   (xmlChar *)"notify"
 
#define XMLTAG_START_PAD   (xmlChar *)"start_pad"
 
#define XMLTAG_END_PAD   (xmlChar *)"end_pad"
 
#define XMLTAG_OTHER_CRID   (xmlChar *)"other_crid"
 
#define XMLTAG_ADDITIONAL_INFO   (xmlChar *)"add_info"
 
#define UC_QUOTE   0x0022
 
#define UC_AMPERSAND   0x0026
 
#define UC_APOSTROPHE   0x0027
 
#define UC_LESS_THAN   0x003c
 
#define UC_GREATER_THAN   0x003e
 

Functions

BOOLEAN ADB_ImportDB (U8BIT *filename)
 Imports the database from an XML file. More...
 
BOOLEAN ADB_ExportDB (U8BIT *filename)
 Exports the database as an XML file. More...
 

Detailed Description

Database XML import/export.

Date
November 2013
Author
Ocean Blue

Function Documentation

BOOLEAN ADB_ExportDB ( U8BIT *  filename)

Exports the database as an XML file.

Parameters
filenamepathname of the XML file to export the database to
Returns
TRUE if successful, otherwise FALSE
BOOLEAN ADB_ImportDB ( U8BIT *  filename)

Imports the database from an XML file.

Parameters
filenamefull pathname of the file to import from
Returns
TRUE if successful, otherwise FALSE