Go to the documentation of this file.
12 #define LOC QString("CC708Reader: ")
13 #define CHECKENABLED if (!m_enabled) return
50 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"SetCurrentWindow(%1, %2)")
51 .arg(service_num).arg(window_id));
56 uint service_num,
int window_id,
57 int priority,
bool visible,
58 int anchor_point,
int relative_pos,
59 int anchor_vertical,
int anchor_horizontal,
60 int row_count,
int column_count,
61 int row_lock,
int column_lock,
62 int pen_style,
int window_style)
66 StreamInfo si(-1, 0, 0, service_num, 0,
false,
false);
74 LOG(VB_VBI, LOG_DEBUG,
LOC +
75 QString(
"DefineWindow(%1, %2,\n\t\t\t\t\t")
76 .arg(service_num).arg(window_id) +
77 QString(
" prio %1, vis %2, ap %3, rp %4, av %5, ah %6")
78 .arg(priority).arg(visible).arg(anchor_point).arg(relative_pos)
79 .arg(anchor_vertical).arg(anchor_horizontal) +
80 QString(
"\n\t\t\t\t\t row_cnt %1, row_lck %2, "
81 "col_cnt %3, col_lck %4 ")
82 .arg(row_count).arg(row_lock)
83 .arg(column_count).arg(column_lock) +
84 QString(
"\n\t\t\t\t\t pen style %1, win style %2)")
85 .arg(pen_style).arg(window_style));
89 anchor_point, relative_pos,
90 anchor_vertical, anchor_horizontal,
91 row_count, column_count,
92 row_lock, column_lock,
93 pen_style, window_style);
101 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"DeleteWindows(%1, %2)")
102 .arg(service_num).arg(window_map, 8, 2, QChar(48)));
104 for (
uint i = 0; i < 8; i++)
105 if ((1 << i) & window_map)
113 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"DisplayWindows(%1, %2)")
114 .arg(service_num).arg(window_map, 8, 2, QChar(48)));
116 for (
uint i = 0; i < 8; i++)
121 QMutexLocker locker(&win.
m_lock);
133 for (
uint i = 0; i < 8; i++)
135 if ((1 << i ) & window_map)
139 LOG(VB_VBI, LOG_DEBUG,
LOC +
140 QString(
"DisplayedWindow(%1, %2)").arg(service_num).arg(i));
148 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"HideWindows(%1, %2)")
149 .arg(service_num).arg(window_map, 8, 2, QChar(48)));
151 for (
uint i = 0; i < 8; i++)
153 if ((1 << i) & window_map)
164 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"ClearWindows(%1, %2)")
165 .arg(service_num).arg(window_map, 8, 2, QChar(48)));
167 for (
uint i = 0; i < 8; i++)
168 if ((1 << i) & window_map)
175 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"ToggleWindows(%1, %2)")
176 .arg(service_num).arg(window_map, 8, 2, QChar(48)));
178 for (
uint i = 0; i < 8; i++)
180 if ((1 << i) & window_map)
190 int fill_color,
int fill_opacity,
191 int border_color,
int border_type,
192 int scroll_dir,
int print_dir,
194 int display_effect,
int effect_speed,
195 int justify,
int word_wrap)
198 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"SetWindowAttributes(%1...)")
217 uint service_num,
int pen_size,
218 int offset,
int text_tag,
int font_tag,
219 int edge_type,
int underline,
int italics)
222 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"SetPenAttributes(%1, %2,")
224 QString(
"\n\t\t\t\t\t pen_size %1, offset %2, text_tag %3, "
226 "\n\t\t\t\t\t edge_type %5, underline %6, italics %7")
227 .arg(pen_size).arg(offset).arg(text_tag).arg(font_tag)
228 .arg(edge_type).arg(underline).arg(italics));
231 pen_size, offset, text_tag, font_tag, edge_type, underline, italics);
236 int fg_color,
int fg_opacity,
237 int bg_color,
int bg_opacity,
241 LOG(VB_VBI, LOG_DEBUG,
242 LOC + QString(
"SetPenColor(service=%1, fg%2.%3, bg=%4.%5, edge=%6)")
243 .arg(service_num).arg(fg_color).arg(fg_opacity)
244 .arg(bg_color).arg(bg_opacity).arg(edge_color));
258 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"SetPenLocation(%1, (c %2, r %3))")
259 .arg(service_num).arg(column).arg(row));
266 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"Delay(%1, %2 seconds)")
267 .arg(service_num).arg(tenths_of_seconds * 0.1F));
273 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"DelayCancel(%1)").arg(service_num));
279 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"Reset(%1)").arg(service_num));
285 int16_t* unicode_string, int16_t len)
288 QString
debug = QString();
289 for (
uint i = 0; i < (
uint)len; i++)
292 debug += QChar(unicode_string[i]);
294 LOG(VB_VBI, LOG_DEBUG,
LOC + QString(
"AddText to %1->%2 |%3|")
CC708CharacterAttribute m_attr
virtual void SetWindowAttributes(uint service_num, int fill_color, int fill_opacity, int border_color, int border_type, int scroll_dir, int print_dir, int effect_dir, int display_effect, int effect_speed, int justify, int word_wrap)
CC708Reader(MythPlayer *owner)
std::array< int, k708MaxServices > m_tempStrSize
void SetPenLocation(uint row, uint column)
void SetAttributes(int pen_size, int offset, int text_tag, int font_tag, int edge_type, int underline, int italics)
std::array< bool, k708MaxServices > m_delayed
const uint k708MaxServices
virtual void Delay(uint service_num, int tenths_of_seconds)
virtual void DelayCancel(uint service_num)
virtual void SetPenColor(uint service_num, int fg_color, int fg_opacity, int bg_color, int bg_opacity, int edge_color)
virtual void SetCurrentWindow(uint service_num, int window_id)
virtual void DefineWindow(uint service_num, int window_id, int priority, bool visible, int anchor_point, int relative_pos, int anchor_vertical, int anchor_horizontal, int row_count, int column_count, int row_lock, int column_lock, int pen_style, int window_style)
#define LOG(_MASK_, _LEVEL_, _QSTRING_)
virtual void ClearWindows(uint service_num, int window_map)
virtual void TextWrite(uint service_num, int16_t *unicode_string, int16_t len)
bool GetVisible(void) const
std::array< CC708Service, k708MaxServices > m_cc708services
virtual void ToggleWindows(uint service_num, int window_map)
std::array< unsigned char *, k708MaxServices > m_buf
CC708Window & GetCCWin(uint service_num, uint window_id)
VERBOSE_PREAMBLE Most debug(nodatabase, notimestamp, noextra)") VERBOSE_MAP(VB_GENERAL
void SetExists(bool value)
virtual void SetPenLocation(uint service_num, int row, int column)
DecoderBase * GetDecoder(void)
Returns the stream decoder currently in use.
virtual void HideWindows(uint service_num, int window_map)
virtual void SetPenAttributes(uint service_num, int pen_size, int offset, int text_tag, int font_tag, int edge_type, int underline, int italics)
virtual void Reset(uint service_num)
std::array< uint, k708MaxServices > m_bufSize
std::array< int, k708MaxServices > m_tempStrAlloc
std::array< int, k708MaxServices > m_cc708DelayedDeletes
std::array< uint, k708MaxServices > m_bufAlloc
void DefineWindow(int priority, bool visible, int anchor_point, int relative_pos, int anchor_vertical, int anchor_horizontal, int row_count, int column_count, int row_lock, int column_lock, int pen_style, int window_style)
virtual void DisplayWindows(uint service_num, int window_map)
void SetVisible(bool value)
std::array< int16_t *, k708MaxServices > m_tempStr
virtual bool InsertTrack(uint Type, const StreamInfo &Info)
virtual void DeleteWindows(uint service_num, int window_map)