/**@class android.media.tv.TvContract.Channels
 implements android.media.tv.TvContract.BaseTvColumns

@extends java.lang.Object

Column definitions for the TV channels table. */
var Channels = {

/** The content:// style URI for this table.

 <p>SQL selection is not supported for {@link ContentResolver#query},
 {@link ContentResolver#update} and {@link ContentResolver#delete} operations.
*/
CONTENT_URI : "null",
/**The MIME type of a directory of TV channels. */
CONTENT_TYPE : "vnd.android.cursor.dir/channel",
/**The MIME type of a single TV channel. */
CONTENT_ITEM_TYPE : "vnd.android.cursor.item/channel",
/** A generic channel type.

 Use this if the current channel is streaming-based or its broadcast system type does not
 fit under any other types. This is the default channel type.

 @see #COLUMN_TYPE
*/
TYPE_OTHER : "TYPE_OTHER",
/** The channel type for NTSC.

 @see #COLUMN_TYPE
*/
TYPE_NTSC : "TYPE_NTSC",
/** The channel type for PAL.

 @see #COLUMN_TYPE
*/
TYPE_PAL : "TYPE_PAL",
/** The channel type for SECAM.

 @see #COLUMN_TYPE
*/
TYPE_SECAM : "TYPE_SECAM",
/** The channel type for DVB-T (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_DVB_T : "TYPE_DVB_T",
/** The channel type for DVB-T2 (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_DVB_T2 : "TYPE_DVB_T2",
/** The channel type for DVB-S (satellite).

 @see #COLUMN_TYPE
*/
TYPE_DVB_S : "TYPE_DVB_S",
/** The channel type for DVB-S2 (satellite).

 @see #COLUMN_TYPE
*/
TYPE_DVB_S2 : "TYPE_DVB_S2",
/** The channel type for DVB-C (cable).

 @see #COLUMN_TYPE
*/
TYPE_DVB_C : "TYPE_DVB_C",
/** The channel type for DVB-C2 (cable).

 @see #COLUMN_TYPE
*/
TYPE_DVB_C2 : "TYPE_DVB_C2",
/** The channel type for DVB-H (handheld).

 @see #COLUMN_TYPE
*/
TYPE_DVB_H : "TYPE_DVB_H",
/** The channel type for DVB-SH (satellite).

 @see #COLUMN_TYPE
*/
TYPE_DVB_SH : "TYPE_DVB_SH",
/** The channel type for ATSC (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_ATSC_T : "TYPE_ATSC_T",
/** The channel type for ATSC (cable).

 @see #COLUMN_TYPE
*/
TYPE_ATSC_C : "TYPE_ATSC_C",
/** The channel type for ATSC-M/H (mobile/handheld).

 @see #COLUMN_TYPE
*/
TYPE_ATSC_M_H : "TYPE_ATSC_M_H",
/** The channel type for ISDB-T (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_ISDB_T : "TYPE_ISDB_T",
/** The channel type for ISDB-Tb (Brazil).

 @see #COLUMN_TYPE
*/
TYPE_ISDB_TB : "TYPE_ISDB_TB",
/** The channel type for ISDB-S (satellite).

 @see #COLUMN_TYPE
*/
TYPE_ISDB_S : "TYPE_ISDB_S",
/** The channel type for ISDB-S3 (satellite).

 @see #COLUMN_TYPE
*/
TYPE_ISDB_S3 : "TYPE_ISDB_S3",
/** The channel type for ISDB-C (cable).

 @see #COLUMN_TYPE
*/
TYPE_ISDB_C : "TYPE_ISDB_C",
/** The channel type for 1seg (handheld).

 @see #COLUMN_TYPE
*/
TYPE_1SEG : "TYPE_1SEG",
/** The channel type for DTMB (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_DTMB : "TYPE_DTMB",
/** The channel type for CMMB (handheld).

 @see #COLUMN_TYPE
*/
TYPE_CMMB : "TYPE_CMMB",
/** The channel type for T-DMB (terrestrial).

 @see #COLUMN_TYPE
*/
TYPE_T_DMB : "TYPE_T_DMB",
/** The channel type for S-DMB (satellite).

 @see #COLUMN_TYPE
*/
TYPE_S_DMB : "TYPE_S_DMB",
/** The channel type for preview videos.

 <P>Unlike other broadcast TV channel types, the programs in the preview channel usually
 are promotional videos. The UI may treat the preview channels differently from the other
 broadcast channels.

 @see #COLUMN_TYPE
*/
TYPE_PREVIEW : "TYPE_PREVIEW",
/**A generic service type. */
SERVICE_TYPE_OTHER : "SERVICE_TYPE_OTHER",
/**The service type for regular TV channels that have both audio and video. */
SERVICE_TYPE_AUDIO_VIDEO : "SERVICE_TYPE_AUDIO_VIDEO",
/**The service type for radio channels that have audio only. */
SERVICE_TYPE_AUDIO : "SERVICE_TYPE_AUDIO",
/**The video format for 240p. */
VIDEO_FORMAT_240P : "VIDEO_FORMAT_240P",
/**The video format for 360p. */
VIDEO_FORMAT_360P : "VIDEO_FORMAT_360P",
/**The video format for 480i. */
VIDEO_FORMAT_480I : "VIDEO_FORMAT_480I",
/**The video format for 480p. */
VIDEO_FORMAT_480P : "VIDEO_FORMAT_480P",
/**The video format for 576i. */
VIDEO_FORMAT_576I : "VIDEO_FORMAT_576I",
/**The video format for 576p. */
VIDEO_FORMAT_576P : "VIDEO_FORMAT_576P",
/**The video format for 720p. */
VIDEO_FORMAT_720P : "VIDEO_FORMAT_720P",
/**The video format for 1080i. */
VIDEO_FORMAT_1080I : "VIDEO_FORMAT_1080I",
/**The video format for 1080p. */
VIDEO_FORMAT_1080P : "VIDEO_FORMAT_1080P",
/**The video format for 2160p. */
VIDEO_FORMAT_2160P : "VIDEO_FORMAT_2160P",
/**The video format for 4320p. */
VIDEO_FORMAT_4320P : "VIDEO_FORMAT_4320P",
/**The video resolution for standard-definition. */
VIDEO_RESOLUTION_SD : "VIDEO_RESOLUTION_SD",
/**The video resolution for enhanced-definition. */
VIDEO_RESOLUTION_ED : "VIDEO_RESOLUTION_ED",
/**The video resolution for high-definition. */
VIDEO_RESOLUTION_HD : "VIDEO_RESOLUTION_HD",
/**The video resolution for full high-definition. */
VIDEO_RESOLUTION_FHD : "VIDEO_RESOLUTION_FHD",
/**The video resolution for ultra high-definition. */
VIDEO_RESOLUTION_UHD : "VIDEO_RESOLUTION_UHD",
/** The ID of the TV input service that provides this TV channel.

 <p>Use {@link #buildInputId} to build the ID.

 <p>This is a required field.

 <p>Type: TEXT
*/
COLUMN_INPUT_ID : "input_id",
/** The broadcast system type of this TV channel.

 <p>This is used to indicate the broadcast standard (e.g. ATSC, DVB or ISDB) the current
 channel conforms to. Use {@link #TYPE_OTHER} for streaming-based channels, which is the
 default channel type. The value should match one of the followings:
 {@link #TYPE_1SEG},
 {@link #TYPE_ATSC_C},
 {@link #TYPE_ATSC_M_H},
 {@link #TYPE_ATSC_T},
 {@link #TYPE_CMMB},
 {@link #TYPE_DTMB},
 {@link #TYPE_DVB_C},
 {@link #TYPE_DVB_C2},
 {@link #TYPE_DVB_H},
 {@link #TYPE_DVB_S},
 {@link #TYPE_DVB_S2},
 {@link #TYPE_DVB_SH},
 {@link #TYPE_DVB_T},
 {@link #TYPE_DVB_T2},
 {@link #TYPE_ISDB_C},
 {@link #TYPE_ISDB_S},
 {@link #TYPE_ISDB_S3},
 {@link #TYPE_ISDB_T},
 {@link #TYPE_ISDB_TB},
 {@link #TYPE_NTSC},
 {@link #TYPE_OTHER},
 {@link #TYPE_PAL},
 {@link #TYPE_SECAM},
 {@link #TYPE_S_DMB},
 {@link #TYPE_T_DMB}, and
 {@link #TYPE_PREVIEW}.

 <p>This value cannot be changed once it's set. Trying to modify it will make the update
 fail.

 <p>This is a required field.

 <p>Type: TEXT
*/
COLUMN_TYPE : "type",
/** The predefined service type of this TV channel.

 <p>This is primarily used to indicate whether the current channel is a regular TV channel
 or a radio-like channel. Use the same coding for {@code service_type} in the underlying
 broadcast standard if it is defined there (e.g. ATSC A/53, ETSI EN 300 468 and ARIB
 STD-B10). Otherwise use one of the followings: {@link #SERVICE_TYPE_OTHER},
 {@link #SERVICE_TYPE_AUDIO_VIDEO}, {@link #SERVICE_TYPE_AUDIO}

 <p>This is a required field.

 <p>Type: TEXT
*/
COLUMN_SERVICE_TYPE : "service_type",
/** The original network ID of this TV channel.

 <p>It is used to identify the originating delivery system, if applicable. Use the same
 coding for {@code original_network_id} for ETSI EN 300 468/TR 101 211 and ARIB STD-B10.

 <p>This is a required field only if the underlying broadcast standard defines the same
 name field. Otherwise, leave empty.

 <p>Type: INTEGER
*/
COLUMN_ORIGINAL_NETWORK_ID : "original_network_id",
/** The transport stream ID of this channel.

 <p>It is used to identify the Transport Stream that contains the current channel from any
 other multiplex within a network, if applicable. Use the same coding for
 {@code transport_stream_id} defined in ISO/IEC 13818-1 if the channel is transmitted via
 the MPEG Transport Stream.

 <p>This is a required field only if the current channel is transmitted via the MPEG
 Transport Stream. Leave empty otherwise.

 <p>Type: INTEGER
*/
COLUMN_TRANSPORT_STREAM_ID : "transport_stream_id",
/** The service ID of this channel.

 <p>It is used to identify the current service, or channel from any other services within
 a given Transport Stream, if applicable. Use the same coding for {@code service_id} in
 ETSI EN 300 468 and ARIB STD-B10 or {@code program_number} in ISO/IEC 13818-1.

 <p>This is a required field only if the underlying broadcast standard defines the same
 name field, or the current channel is transmitted via the MPEG Transport Stream. Leave
 empty otherwise.

 <p>Type: INTEGER
*/
COLUMN_SERVICE_ID : "service_id",
/** The channel number that is displayed to the user.

 <p>The format can vary depending on broadcast standard and product specification.

 <p>Type: TEXT
*/
COLUMN_DISPLAY_NUMBER : "display_number",
/** The channel name that is displayed to the user.

 <p>A call sign is a good candidate to use for this purpose but any name that helps the
 user recognize the current channel will be enough. Can also be empty depending on
 broadcast standard.

 <p> Type: TEXT
*/
COLUMN_DISPLAY_NAME : "display_name",
/** The network affiliation for this TV channel.

 <p>This is used to identify a channel that is commonly called by its network affiliation
 instead of the display name. Examples include ABC for the channel KGO-HD, FOX for the
 channel KTVU-HD and NBC for the channel KNTV-HD. Can be empty if not applicable.

 <p>Type: TEXT
*/
COLUMN_NETWORK_AFFILIATION : "network_affiliation",
/** The description of this TV channel.

 <p>Can be empty initially.

 <p>Type: TEXT
*/
COLUMN_DESCRIPTION : "description",
/** The typical video format for programs from this TV channel.

 <p>This is primarily used to filter out channels based on video format by applications.
 The value should match one of the followings: {@link #VIDEO_FORMAT_240P},
 {@link #VIDEO_FORMAT_360P}, {@link #VIDEO_FORMAT_480I}, {@link #VIDEO_FORMAT_480P},
 {@link #VIDEO_FORMAT_576I}, {@link #VIDEO_FORMAT_576P}, {@link #VIDEO_FORMAT_720P},
 {@link #VIDEO_FORMAT_1080I}, {@link #VIDEO_FORMAT_1080P}, {@link #VIDEO_FORMAT_2160P},
 {@link #VIDEO_FORMAT_4320P}. Note that the actual video resolution of each program from a
 given channel can vary thus one should use {@link android.media.tv.TvContract.Programs#COLUMN_VIDEO_WIDTH} and
 {@link android.media.tv.TvContract.Programs#COLUMN_VIDEO_HEIGHT} to get more accurate video resolution.

 <p>Type: TEXT

 @see #getVideoResolution
*/
COLUMN_VIDEO_FORMAT : "video_format",
/** The flag indicating whether this TV channel is browsable or not.

 <p>This column can only be set by applications having proper system permission. For
 other applications, this is a read-only column.

 <p>A value of 1 indicates the channel is included in the channel list that applications
 use to browse channels, a value of 0 indicates the channel is not included in the list.
 If not specified, this value is set to 0 (not browsable) by default.

 <p>Type: INTEGER (boolean)
*/
COLUMN_BROWSABLE : "browsable",
/** The flag indicating whether this TV channel is searchable or not.

 <p>The columns of searchable channels can be read by other applications that have proper
 permission. Care must be taken not to open sensitive data.

 <p>A value of 1 indicates that the channel is searchable and its columns can be read by
 other applications, a value of 0 indicates that the channel is hidden and its columns can
 be read only by the package that owns the channel and the system. If not specified, this
 value is set to 1 (searchable) by default.

 <p>Type: INTEGER (boolean)
*/
COLUMN_SEARCHABLE : "searchable",
/** The flag indicating whether this TV channel is locked or not.

 <p>This is primarily used for alternative parental control to prevent unauthorized users
 from watching the current channel regardless of the content rating. A value of 1
 indicates the channel is locked and the user is required to enter passcode to unlock it
 in order to watch the current program from the channel, a value of 0 indicates the
 channel is not locked thus the user is not prompted to enter passcode If not specified,
 this value is set to 0 (not locked) by default.

 <p>This column can only be set by applications having proper system permission to
 modify parental control settings. For other applications, this is a read-only column.

 <p>Type: INTEGER (boolean)
*/
COLUMN_LOCKED : "locked",
/** The URI for the app badge icon of the app link template for this channel.

 <p>This small icon is overlaid at the bottom of the poster art specified by
 {@link #COLUMN_APP_LINK_POSTER_ART_URI}. The data in the column must be a URI in one of
 the following formats:

 <ul>
 <li>content ({@link android.content.ContentResolver#SCHEME_CONTENT})</li>
 <li>android.resource ({@link android.content.ContentResolver#SCHEME_ANDROID_RESOURCE})
 </li>
 <li>file ({@link android.content.ContentResolver#SCHEME_FILE})</li>
 </ul>

 <p>The app-linking allows channel input sources to provide activity links from their live
 channel programming to another activity. This enables content providers to increase user
 engagement by offering the viewer other content or actions.

 <p>Type: TEXT
 @see #COLUMN_APP_LINK_COLOR
 @see #COLUMN_APP_LINK_INTENT_URI
 @see #COLUMN_APP_LINK_POSTER_ART_URI
 @see #COLUMN_APP_LINK_TEXT
*/
COLUMN_APP_LINK_ICON_URI : "app_link_icon_uri",
/** The URI for the poster art used as the background of the app link template for this
 channel.

 <p>The data in the column must be a URL, or a URI in one of the following formats:

 <ul>
 <li>content ({@link android.content.ContentResolver#SCHEME_CONTENT})</li>
 <li>android.resource ({@link android.content.ContentResolver#SCHEME_ANDROID_RESOURCE})
 </li>
 <li>file ({@link android.content.ContentResolver#SCHEME_FILE})</li>
 </ul>

 <p>The app-linking allows channel input sources to provide activity links from their live
 channel programming to another activity. This enables content providers to increase user
 engagement by offering the viewer other content or actions.

 <p>Type: TEXT
 @see #COLUMN_APP_LINK_COLOR
 @see #COLUMN_APP_LINK_ICON_URI
 @see #COLUMN_APP_LINK_INTENT_URI
 @see #COLUMN_APP_LINK_TEXT
*/
COLUMN_APP_LINK_POSTER_ART_URI : "app_link_poster_art_uri",
/** The link text of the app link template for this channel.

 <p>This provides a short description of the action that happens when the corresponding
 app link is clicked.

 <p>The app-linking allows channel input sources to provide activity links from their live
 channel programming to another activity. This enables content providers to increase user
 engagement by offering the viewer other content or actions.

 <p>Type: TEXT
 @see #COLUMN_APP_LINK_COLOR
 @see #COLUMN_APP_LINK_ICON_URI
 @see #COLUMN_APP_LINK_INTENT_URI
 @see #COLUMN_APP_LINK_POSTER_ART_URI
*/
COLUMN_APP_LINK_TEXT : "app_link_text",
/** The accent color of the app link template for this channel. This is primarily used for
 the background color of the text box in the template.

 <p>The app-linking allows channel input sources to provide activity links from their live
 channel programming to another activity. This enables content providers to increase user
 engagement by offering the viewer other content or actions.

 <p>Type: INTEGER (color value)
 @see #COLUMN_APP_LINK_ICON_URI
 @see #COLUMN_APP_LINK_INTENT_URI
 @see #COLUMN_APP_LINK_POSTER_ART_URI
 @see #COLUMN_APP_LINK_TEXT
*/
COLUMN_APP_LINK_COLOR : "app_link_color",
/** The intent URI of the app link for this channel.

 <p>The URI is created using {@link Intent#toUri} with {@link Intent#URI_INTENT_SCHEME}
 and converted back to the original intent with {@link Intent#parseUri}. The intent is
 launched when the user clicks the corresponding app link for the current channel.

 <p>The app-linking allows channel input sources to provide activity links from their live
 channel programming to another activity. This enables content providers to increase user
 engagement by offering the viewer other content or actions.

 <p>Type: TEXT
 @see #COLUMN_APP_LINK_COLOR
 @see #COLUMN_APP_LINK_ICON_URI
 @see #COLUMN_APP_LINK_POSTER_ART_URI
 @see #COLUMN_APP_LINK_TEXT
*/
COLUMN_APP_LINK_INTENT_URI : "app_link_intent_uri",
/** The internal ID used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Can be empty.

 <p>Type: TEXT
*/
COLUMN_INTERNAL_PROVIDER_ID : "internal_provider_id",
/** Internal data used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Type: BLOB
*/
COLUMN_INTERNAL_PROVIDER_DATA : "internal_provider_data",
/** Internal integer flag used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Type: INTEGER
*/
COLUMN_INTERNAL_PROVIDER_FLAG1 : "internal_provider_flag1",
/** Internal integer flag used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Type: INTEGER
*/
COLUMN_INTERNAL_PROVIDER_FLAG2 : "internal_provider_flag2",
/** Internal integer flag used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Type: INTEGER
*/
COLUMN_INTERNAL_PROVIDER_FLAG3 : "internal_provider_flag3",
/** Internal integer flag used by individual TV input services.

 <p>This is internal to the provider that inserted it, and should not be decoded by other
 apps.

 <p>Type: INTEGER
*/
COLUMN_INTERNAL_PROVIDER_FLAG4 : "internal_provider_flag4",
/** The version number of this row entry used by TV input services.

 <p>This is best used by sync adapters to identify the rows to update. The number can be
 defined by individual TV input services. One may assign the same value as
 {@code version_number} that appears in ETSI EN 300 468 or ATSC A/65, if the data are
 coming from a TV broadcast.

 <p>Type: INTEGER
*/
COLUMN_VERSION_NUMBER : "version_number",
/** The flag indicating whether this TV channel is transient or not.

 <p>A value of 1 indicates that the channel will be automatically removed by the system on
 reboot, and a value of 0 indicates that the channel is persistent across reboot. If not
 specified, this value is set to 0 (not transient) by default.

 <p>Type: INTEGER (boolean)
 @see PreviewPrograms#COLUMN_TRANSIENT
 @see WatchNextPrograms#COLUMN_TRANSIENT
*/
COLUMN_TRANSIENT : "transient",
/**Returns the video resolution (definition) for a given video format.
@param {String} videoFormat The video format defined in {@link Channels}.
@return {String} the corresponding video resolution string. {@code null} if the resolution string
         is not defined for the given video format.
@see #COLUMN_VIDEO_FORMAT
*/
getVideoResolution : function(  ) {},


};