module h730 {
interface DiscoveryFinder
{
public DiscoveryServiceCollection find(in String strName, in Int nTimeoutInMS); // Find a device of special name in local network, with in time out
public DiscoveryServiceCollection find(in Int nTimeoutInMS); // Find all device in local network, with in time out
public void done();// Stop finding
};
interface Broadcast
{
// Broadcasting Type define
const long BROADCAST_TYPE_TERRERRESTRIAL = 0; // Non IP - TERRERRESTRIAL
const long BROADCAST_TYPE_CABLE = 1; // Non IP - CABLE
const long BROADCAST_TYPE_SATELLITE = 2; // Non IP - SATELLITE
const long BROADCAST_TYPE_UNICAST = 3; // Over IP - UNICAST
const long BROADCAST_TYPE_MULTICAST = 4; // Over IP - MULTICAST
boolean OpenBroadCast(); // Open and Connect to Broadcasting
void CloseBroadCast(); // Close or disconnect from Broadcasting
void setBroadCastType(in long nType); // Set Broadcasting type
void getBroadCastType(); // Get Broadcasting type
void ChannelUp(); // Channel Up
void ChannelDown();// Channel Down
void setChannel(in ChannelInfo sToChannel); // Set Channel by Channel information
void setChannel(in string strChNum); // Set Channel by Channel number
void SetDefaultChannel();// Set to default channel
ChannelInfo getCurrentChannel();// Get current channel information
string getCurrentChannelName();// Get current channel Name
boolean StartChannelScan();// Channel scanning start
void StopChannelScan();// Channel scanning start
int getChannelCount();// Get available channels count
};
// VI.1.2.1.2 Channel manager
interface ChannelManager
{
attribute Vector m_vecChannels; // Channel vector
attribute int m_ChannelIndex; // Current channel index
int AddChannel(in ChannelInfo sCh); // Add Channel information to channel vector - return channel count
int getChannelCount(in ChannelInfo sCh); // Get Channel count of channel vector
boolean RemoveChannel(in string nChannelNum); // Remove channel information from channel vector
ChannelInfo FindChannel(in string nChannelNum); //Find Channel Information via channel number
boolean StartChannelScan();//Channel Scan Start
boolean StopChannelScan();//Channel Scan Stop
boolean ClearChannel();//Clear channel information from channel vector
ChannelInfo ChannelUp();//Channel up
ChannelInfo ChannelDown();//Channel Down
ChannelInfo getCurrentChannel();//Get current channel information
ChannelInfo SetDefaultChannel();//set to default channel
};
// VI.1.2.1.3 Channel information
interface ChannelInfo
{
attribute string mstrChannelName; // Channel Name
attribute string mstrURL; // Channel attribute Service URL
attribute string mstrChannelNo; // Channel Number
attribute int mnChannelFreq; // Channel Frequency
attribute int mnChannelMajorCh; // Major Channel Number
attribute int mnChannelMinorCh; // Minor Channel Number
int getChannelFreq(); //Get Channel frequency
void setChannelFreq(in long mnChannelFreq); // Set Channel Frequency
int getChannelMajorCh(); // Get Major Channel Number
void setChannelMajorCh(in long mnChannelMajorCh); // Set Major Channel Number
int getChannelMinorCh() ; // Get Minor Channel Number
void setChannelMinorCh(in long mnChannelMinorCh) ; // Set Minor Channel Number
string getChannelName(); // Get Channel Name
void setChannelName(string mstrChannelName) ; // Set Channel Name
string getURL() ; // Get URL
void setURL(string mstrURL) ; // Set URL
string getChannelNo(); // Get Channel Num,ber
void getChannelNo (string chNum) ; // Set Channel Number
}
// VI.1.2.2 MulticastClient – Multicast content delivery client functional interface
interface MulticastClient
{
attribute MulticastSocket mSocket; // MulticastSocket
attribute int mPort ; // Port for Multicast
attribute string mServerAddress ; // Server IP Address
attribute InetAddress mAddress; // IP Address container
attribute boolean bJoin; // Is Joined to multicast server
void joinGroup(); //Join to Mulicast group
void leaveGroup(); //Leave Mulicast group
void leaveGroup(); // Leave Mulicast group
DatagramPacket getDataPacket(in long nDataLen); // Get DataPaket
boolean isJoinned(); // Is Joinned to Multicast
};
// VI.1.2.3 Unicast content delivery client functional block interface
// This is normal media player's function. We can play a media stream or file.
// See VI.1.3 for Media Client function.
// VI.1.3 Media client functions interfaces
// VI.1.3.1 MediaPlayer
// MediaPlayer can be used to control playback of audio/video files and streams.
interface MediaPlayer
{
void getCurrentPosition(); //Gets the current playback position
void getDuration(); //Get the duration of the file
long getVideoHeight(); //Returns the height of the video
long getVideoWidth(); //Returns the width of the video
boolean isLooping(); //Checks whether the MediaPlayer is looping or non-looping
boolean isPlaying(); //Checks whether the MediaPlayer is playing
void mediaPause(); //Pauses playback
void seekTo(in long msec); //Seeks to specified time position
void setLooping(in boolean looping); //Sets the MediaPlayer to be loopint or non-looping
void mediaVolumeUp(); //Sets the MediaVolume 1 step up
void mediaVolumeDown(); //Sets the MediaVolume 1 step dwon
void mediaPlay(); //MediaPlayer play
void mediaStop(); //MediaPlayer stop
void mediaFF(); //MediaPlayer fast-foward (5 seconds)
void mediaREW(); //Mediaplayer rewand (5 seconds)
void MediaPath(in string path); //the Mediapath of the file, or the http/rtsp URL of the stream you want to play
};
// VI.1.3.2 Subtitle
interface SubTitle
{
boolean mbVisible = true; //visible subtitles
void subtitleVisible(in boolean visible); //true is visible. false is invisible
void subtitleFontSize(in long fontSize); //Subtitles font size
void subtitleLocation(in long X, in long Y); //Subtitles locate position
void subtitleDefaultPosition(); //Subtitles default position
void subtileFF(in long time); //movement synchronization subtitles Fase-Forward
void subtileREW(in long time); //Movement synchoronization subtitles Rewind
};
// VI.1.3.3 MediaInfo
interface MediaInfo
{
long long fileInfoDate_Created(); //The time the Media was Created to the media provider Units are seconds since 1970
long long fileInfoDate_Modified(); //The time the Media was last modified Units are seconds sincd 1970
string fileInfoDisplay_Name(); //The display name of this file
long long getSize(); //The size of the file in bytes
string getTitle(); //The title of the content
string getArtist(); //Audio file info Artist
string getAlbum(); //Audio file info Album
string getFileName(); //Audio file info filename
sCodecInfo videocodecInfo(); //Return video codec info
sCodecInfo audiocodecInfo(); //Return audio codec info
};
// VI.1.3.4 AudioPlayer
// AudioPlayer class can be used to control playback of audio files and streams
interface AudioPlayer
{
void getCurrentPosition(); //Gets the current playback position
void getDuration(); //Get the duration of the file
boolean isLooping(); //Checks whether the AudioPlayer is looping or non-looping
boolean isPlaying(); //Checks whether the AudioPlayer is playing
void Pause(); //Pauses playback
void seekTo(in long msec); //Seeks to specified time position
void setLooping(in boolean looping); //Sets the player to be loopint or non-looping
void VolumeUp(); //Sets Audio Volume up
void VolumeDown(); //Sets Audio Volume dwon
void Play(); //AudioPlayer play
void Stop(); //AudioPlayer stop
void FF(); //AudioPlayer fast-foward (5 seconds)
void REW(); //Audioplayer rewand (5 seconds)
void audioPath(in string path); //the audiopath of the file, or the http/rtsp URL of the stream you want to play
};
// VI.1.3.5 MediaRecorder
// Used to record audio and video. The recording control is based on a simple state machine
interface MediaRecoder
{
void getRecodertime(); //Gets the Recodertime
void getDuration(); //Get the duration of the file
long getVideoHeight(); //Returns the height of the video
long getVideoWidth(); //Returns the width of the video
boolean isRecording(); //Checks whether the MediaRecorder is recording
void pauseRecorder(); //Pauses playback
void stopRecorder(); //MediaRecorder stop
void playRecorder(in string file, in long type); //Default MediaRecorder play
void playAudioRecorder(in string file, in long audioSource, in long outputFormat, in long audioEncoder, in long maxDuration, in long maxFileSize); //Detail setting for AudioRecording by user
void playMediaRecorder(in string file, in long audioSource, in long videoSource, in long outputFormat, in long audioEncoder, in long vidoeEncoder, in long width, in long height, in long videoFrameRate, in long maxDuration, in long maxFileSize); //Detail setting for MediaRecording by user
// Defines the audio source. These constants are used with setAudioSource(int)
const long AudioSource.DEFAULT = 0;
const long AudioSource.MIC = 1;
const long AudioSource.VOICE_UPLINK = 2;
const long AudioSource.VOICE_DOWNLINK = 3;
const long AudioSource.VOICE_CALL = 4;
const long AudioSource.CAMCORDER = 5;
const long AudioSource.VOICE_RECOGNITION = 6;
//Defines the video source. These constants are used with setVideoSource(int)
const long VideoSource.DEFAULT = 0;
const long VideoSource.CAMERA 1 = 1;
const long VideoSource.CAMERA 2 = 2;
//Defines the output format. These constants are used with setOutputFormat(int)
const long OutputFormat.DEFAULT = 0;
const long OutputFormat.THREE_GPP = 1;
const long OutputFormat.MPEG_4 = 2;
const long OutputFormat.RAW_AMR = 3;
//Defines the audio encoding. These constants are used with setAudioEncoder(int)
const long AudioEncoder.DEFAULT = 0;
const long AudioEncoder.AMR_NB = 1;
//Defines the video encoding. These constants are used with setVideoEncoder(int)
const long VideoEncoder.DEFAULT = 0;
const long VideoEncoder.H263 = 1;
const long VideoEncoder.H264 = 2;
const long VideoEncoder.MPEG_4_SP = 3;
};
// VI.1.4 SCP client functions interfaces
// VI.1.4.1 DRM function interface
interface DRM
{
struct DRMInfo{
char SID[64]; //sellerID
char SCID[128]; //SellerContentID
char UID[64]; //UserID
char UPW[64]; //Password
};
void setDRMInfo(in string SID, in string SCID, in string UDI, in string UPW);
};
// VI.1.4.2 CAS function interface
interface CAS
{
long authorityCheck(in long CW); // decoding by CW
};
// VI.1.5 Application client functions interface
// VI.1.5.1 appExecuter - IPTV application client interface
interface appExecuter
{
boolean isRunnig(in string fileName); //Check isRunnig
void excute(in string filePath, in string fileName); //Excute program
void terminate(in string fileName); //Kill the excuted program
};
// VI.1.5.1.1 Browser - Global function for WBTM client
interface Browser
{
void navigate(in string strURL); // Go to the URL web site
void closeApplication(); //Close the browser or exit web application.
void goBack(); //Go back to history of URL stack.
boolean canGoBack(); //Return true if this WebView has a back history item.
void zoomIn(); //Perform zoom in in the Browser
void zoomOut(); //Perform zoom out in the Browser
void goBackOrForward(in long steps); //Go to the history item that is the number of steps away from the current item.
void goForward(); //Go forward in the history of this Browser.
void setVerticalScrollBarEnabled(in boolean b); //Specify whether the vertical scrollbar has overlay style.
string getUrl(); //Get the url for the current page
boolean canGoBackOrForward(in long steps); //Return true if the page can go back or forward the given number of steps.
boolean canGoForward(); //Return true if this Browser has a forward history item.
void clearCache(in boolean includeDiskFiles); //Clear the resource cache.
void clearFormData(); //Make sure that clearing the form data removes the adapter from the currently focused textfield if there is one.
void clearHistory(); //Tell the Browser to clear its internal back/forward list.
string getOriginalUrl(); //Get the original url for the current page.
int getProgress(); //Get the progress for the current page.
float getScale(); //Return the current scale of the Browser
string getTitle(); //Get the title for the current page.
void stopLoading(); //Stop the current load.
void reload(); //Reload the current url.
};
// VI.1.5.1.2 WebSettings
interface WebSettings
{
enum ZoomDensity { FAR, // 240dpi
MEDIUM, // 160dpi
CLOSE}; // 120dpi}
int getDefaultFontSize(); //Get the default font size.
boolean getAllowFileAccess(); //Returns true if this Browser supports file access.
int getCacheMode(); // Return the current setting for overriding the cache mode
string getCursiveFontFamily(); // Get the cursive font family name
boolean getDatabaseEnabled(); // Returns true if database storage API is enabled
string getDatabasePath(); // Return the path to where database storage API databases are saved for the current Browser
int getDefaultFixedFontSize(); // Get the default fixed font size. The default is 16.
string getDefaultTextEncodingName(); // Get the default text encoding name
WebSettings.ZoomDensity getDefaultZoom(); // Get the default zoom density of the page
boolean getJavaScriptEnabled(); // Return true if javascript is enabled. The default is false.
void setAppCacheEnabled(in boolean flag); //Tell the Browser to enable Application Caches API.
void setCacheMode(in long mode); //Override the way the cache is used. The way the cache is used is based on the navigation option
void setCursiveFontFamily(in string font); //Set the cursive font family name
void setDatabaseEnabled(in boolean flag); //Set whether the database storage API is enabled
void setDefaultZoom(in WebSettings.ZoomDensity zoom); //Set the default zoom density of the page
void setDatabasePath(in string databasePath); //Set the path to where database storage API databases to be saved
void setDefaultFixedFontSize(in long size); //Set the default fixed font size.
void setDefaultFontSize(in long size); //Set the default font size
void setJavaScriptEnabled(in boolean flag); //Tell the Browser to enable javascript execution.
void setStandardFontFamily(in string font); //Set the standard font family name.
void setSupportZoom(in boolean support); //Set whether the Browser supports zoom
boolean supportZoom(); //Returns whether the Browser supports zoom
};
// VI.1.5.1.3 URLUtil
interface URLUtil
{
string decode(in string strUrl, in string encode); //Decode url
string guessUrl(in string inUrl); //Cleans up (if possible) user-entered web addresses
boolean isAboutUrl(in string url); //True iff the url is an about: url.
boolean isAssetUrl(in string url); //True iff the url is an asset file.
boolean isContentUrl(in string url); //True iff the url is a content: url.
boolean isDataUrl(in string url); //True iff the url is a data: url.
boolean isFileUrl(in string url); //True iff the url is a local file.
boolean isHttpUrl(in string url); //True iff the url is an http: url.
boolean isHttpsUrl(in string url); //True iff the url is an https: url.
boolean isJavaScriptUrl(in string url); //True iff the url is a javascript: url.
boolean isNetworkUrl(in string url); //True iff the url is a network url.
boolean isValidUrl(in string url); //True iff the url is valid.
string stripAnchor(in string url); //Strips the url of the anchor.
};
// VI.1.5.2 SADS client functional block interface
// VI.1.5.2.1 Starter
interface Starter
{
void getInstance(); // Gets this sigleton instance of the Service starter
void goHome(); // Browser to HomeScreen of WBTM. You can choose one of the Contents provider and service category.
};
// VI.1.6 Connection and session management interface
// VI.1.6.1 CookieManager
interface CookieManager
{
boolean acceptCookie () ; //Return whether cookie is enabled
string getCookie(in string url); //Get cookie(s) for a given url so that it can be set to "cookie:" in http request header.
boolean hasCookies (); //Return true if there are stored cookies.
void removeAllCookie (); //Remove all cookies
void removeExpiredCookie (); //Remove all expired cookies
void removeSessionCookie (); //Remove all session cookies, which are cookies without expiration date
void setAcceptCookie (in boolean accept); //Control whether cookie is enabled or disabled
void setCookie (in string url, in string value); //Set cookie for a given url.
};
// VI.1.6.2 CookieSyncManager
interface CookieSyncManager
{
void resetSync () ; // resets sync manager's timer
void run () ; //Starts executing the active part of the class' code.
void startSync () ; //startSync() requests sync manager to start sync
void stopSync () ; //stopSync() requests sync manager to stop sync
void sync () ; //sync() forces sync manager to sync now
};
// VI.1.7 Terminal device management interface
// VI.1.7.1 NetworkSetting
interface NetworkSetting
{
attribute boolean mbDHCP; // is DHCP or Not
attribute string mstrIPAddress; // Local Ip Address
attribute string mstrSubnetMask; // Subnet Mask
attribute string mstrGetWay; //Gateway IP
attribute boolean mbAutoDNS; // Get DNS Address automaticaly
attribute string mstrPrimDNS; // Primary DNS
attribute string mstrSecDNS; // Secondary DNS
boolean IsDHCP(); // Get Information about DHCP or Not
void SetDHCP(in boolean bdhcp); // Set DHCP or Not
void setIPAddress (in string strIP); // Set IP Address
string getIPAddress (); // Get IP Address
void setSubnetMask(in string strIP); // Set Subnet Mask
string getSubnetMask (); // Get Subnet Mask
void setGateway(in string strIP); // Set Gateway
string getGateway(); // Get Gateway Address
};
// VI.1.7.2 StorageManager
// This class represents the storage manager which keeps track of the storage devices attached to the system.
interface StorageManager
{
const long STORAGETYPE_HD = 0;
const long STORAGETYPE_USB = 1;
long getStorageType();//Return StorageType
void onRemove(in long storageType); //Remove Storage
void onAttach(in long storageType); //Attach Storage
const long STORAGE_ADDED = 0;
const long STORAGE_REMOVED = 1;
const long STORAGE_CHANGED = 2;
long addStorageManagerListener(in StorageManagerListener listener); //Return STORAGE_ADDED
long removeStorageManagerListener(in StorageManagerListener listener); //Return STORAGE_REMOVED
sequence<string> getMountList(); //Return MountList
octet getTotalVolume(); //Return TotalVolume
octet getFreeVolume(); //Return FreeVolume
octet getUsedVolume(); //Return UsedVolume
const long FAT16 = 0;
const long FAT32 = 1;
const long NTFS = 2;
const long EXT2 = 3;
const long EXT3 = 4;
const long RAISERFS = 5;
long getFileSystem(in long storageType); //Return storage filesystem
};
// VI.1.7.3 MicController
interface MicController
{
const long RET_OK = 0;
const long RET_NOT_SUPPORTED = 1;
const long RET_FAIL = 2;
void instance(); //Create MikeController object.
void setVolume(in long level); //Set microphone volume to level.
void getVolume(); //Get current microphone volume.
void setMikeEnabled(in boolean enable); //Set microphone Enable or disable.
void isMikeEnabled(); //Check is microphone enabled.
void MikeMute(); //Check whether themicrophone mute is on or off.
void setMikeMute(in boolean on); //Sets the microphone mute on or off
};
// VI.1.7.4 VolumeController
interface VolumeController
{
void getInstance(); //Create VolumeController object.
void setVolumeLevel(in long value); //Set speaker volume to the level.
void setMute(in boolean isMute); //Set Mute
boolean isMute(); //Check is muted
void getCurrentVolumeLevel(); //Get current volume level.
void systemVolumeUp(); //Set SystemVolume 1 step up.
void systemVolumeDown(); //Set SystemVolume 1 step down.
void mediaVolumeUp(); //set MediaVolume 1 step up.
void mediaVolumedown(); //set MediaVolume 1 step down
void getMaxVolumeLevel(); //Get maximum volume leavel.
void getMinVolumeLevel(); //Get minimum volume level.
};
// VI.1.7.5 PowerManager
interface PowerManager
{
void goToSleep(in long long time); //Force the device to go to sleep. Overrides all the wake locks that are held.
void isScreenOn(); //Returns whether the screen is currently on. The screen could be bright or dim.
void reboot(); //Reboot the device. Will not return if the reboot is successful.
};
// VI.1.7.6 System Clock
interface SystemClock
{
long long currentThreadTimeMillis(in boolean realTime); //Returns milliseconds running in the current thread.
long long elapsedRealtime(); //Returns milliseconds since boot, including time spent in sleep.
boolean setCurrentTimeMillis(in long long millis); //Sets the current wall time, in milliseconds. Requires the calling process to have appropriate permissions.
void sleep(in long long ms); //Waits a given number of milliseconds(of uptimeMillis) before returning.
};
// VI.1.8 Performance monitoring interface
// VI.1.8.1 MemoryInfo
interface MemoryInfo
{
long long totalMemory(); //Returns the total amount of memory which is available to the running program.
long long freeMemory(); //Returns the amount of free memory resources which are available to the running program.
long long maxMemory(); //Returns the maximum amount of memory that may be used by the virtual machine, or Long.MAX_VALUE if there is no such limit
long long usedMemory(); //Returns the amount of Usedmemory resources which are available to the running program.
};
// VI.1.8.2 ProcessorInfo
interface ProcessorInfo
{
struct Processor
{
string mName;
long mID;
};
long getTotalProcessor(); // Count of All Processor
int CPUUsageRate(); // Get CPU Usage Rate
int ProcessorRate(in long ProcessorID); // Get Processor's Usage Rate
void KillProcessor(in long ProcessorID); // Kill Processor
void KillAllProcessor(in string strProcessorName); // Kill Processor vis Processor name
typedef sequence<Processor> GetWorkingProcessorList(); //Get Progessor List
};
// VI.2 Web-based engine structure
// VI.2.1 Markup language
// VI.2.1.1 MLDocument
interface MLDocument
{
void load(string URL); // load url
boolean isLoading(); //Check whether current page is loading
string getURL(); // Get current url
boolean isComplete ();// Check whether current page loads complete
void stopLoad(); //stop loading page
boolean isStopping(); //Check whether current page stop loading
ResourceError getError(); //Get Loading error information
};
// VI.2.1.2 ResourceError
interface ResourceError
{
string domain(); //get the domain
int errorCode(); //get errordode
string localizedDescription(); //get error code descriptione
};
// VI.2.2 Document access interface
// VI.2.2.1 DOM node
interface DOMNode
{
string getNodeName(string strNode); //get node name
void setNodeValue(string strValue); //setting node value of current node
string nodeValue(string strNode); //get node value
string nodeType(string strNode); //get node type
DOMNode parentNode(string strNode); //get parent node
DOMNodeList childNodes(); //get child node list of current node
DOMNode firstChild(); //get first child node of current node
DOMNode lastChild(); //get last child node of current node
DOMNode previousSibling(); // get the previous sibling node
DOMNode nextSibling(); //get the next sibling node
boolean removeChild (DOMNode oldChild); //remove child node of current node
boolean appendChild( DOMNode newChild) //append child node of current node
boolean hasChildNodes(); //return true if node has children
boolean hasAttributes(); //return ture if node has attributes
};
// VI.2.2.2 DOM node list
interface DOMNodeList
{
DOMNode item(UINT index); //get DOMNode of DOMNodeList
int length(); //get length of DOMNodeList
};
// VI.2.2.3 DOM document
interface DOMDocument
{
void Load(string strFile); // load DOM file
DOMNodeList getElementsByTagName(BSTR tagName);
// returns a NodeList of all a elements with a specified name
DOMElement getElementById(BSTR elementId);
//returns the first element with the specified id
};
// VI.2.2.4 DOM element
interface DOMElement
{
string getAttribute(string name); // gets an attribute value by name
void setAttribute(string name, string value); // adds a new attribute.
void removeAttribute(string name); // removes a specified attribute
};
// VI.2.3 Document style
// VI.2.3.1 Style sheet
interface StyleSheet
{
CSSRule ownerRule(); //get Parent(Owner)'s Rule
CSSRuleList* rules(); //get rulelist
int addRule(string selector, string style, int index); //Add rule to style sheet
int addRule(string selector, string style); //Add rule to style sheet
void removeRule(unsigned index); //remove rule from style sheet
boolean isLoading(); //Check whether style sheet is loading
boolean isComplete() ; // Check whether style sheet loads complete
};
// VI.2.3.2 Rule
interface Rule
{
boolean isStyleSheet(); //check sytlesheet
boolean isCSSStyleSheet(); //check CSS style sheet
boolean isXSLStyleSheet(); //check XSL style sheet
boolean isStyleSheetList() ; //check style sheet list
boolean isMediaList(); // check media list
boolean isMediaRule(); // check media rule
boolean isRuleList(); // check rulelist
boolean isRule(); // check rule
boolean isStyleRule(); // check style rule
boolean isCharsetRule(); // check charset rule
boolean isImportRule(); //check imported rule
boolean isFontFaceRule(); // check fontface rule
boolean isPageRule(); // check page rule
boolean isUnknownRule(); // check unknown rule
boolean isValue(); // check a value
string getValue(); //get value
};
// VI.2.3.3 Rule list
interface RuleList
{
int length() ; //get item length
Rule item(unsigned index); //get rule item of list
int insertRule(Rule*, unsigned index); //insert a new rule
void deleteRule(unsigned index); // delete rule
void append(CSSRule ); // append a new rule
};
// VI.2.4 Scripting language
// VI.2.4.1 Script
Script
{
JSValue executeScript(string script, boolean forceUserGesture);
// excute script string
};
// VI.2.4.2 Script value
ScriptValue
{
enum JSType
{
UnspecifiedType = 0;
NumberType = 1;
BooleanType = 2;
UndefinedType = 3;
NullType = 4;
StringType = 5;
};
boolean isUndefined(); //check undefined type
boolean isNull(); //check null type
boolean isBoolean(); //check boolean
boolean isNumber(); // check number
boolean isString(); // check string
boolean getBoolean(); //get boolean value
double getNumber(); //get number value
string getString(); //get string value
};
};