AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Functions
a
b
c
e
f
g
h
i
j
k
l
m
o
p
r
s
t
u
v
w
Variables
Typedefs
a
b
c
d
e
f
g
h
i
j
k
m
n
o
p
r
s
t
u
v
Enumerations
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Typedefs
_
a
b
c
d
e
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Enumerations
Enumerator
b
c
e
g
k
n
r
v
Related Functions
:
a
b
c
d
j
o
s
w
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Variables
_
a
b
c
e
f
g
h
i
k
l
m
n
p
r
s
t
u
v
w
Typedefs
_
a
b
c
d
f
h
i
l
m
n
o
p
q
r
s
t
u
w
Enumerations
_
a
b
c
d
e
f
h
i
j
k
m
n
p
q
r
s
t
u
v
x
Enumerator
a
b
c
d
e
f
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
ntv2caption608dataqueue.h
Go to the documentation of this file.
1
6
#ifndef __NTV2_CEA608_DATAQUEUE_
7
#define __NTV2_CEA608_DATAQUEUE_
8
9
#include "
ntv2caption608types.h
"
10
#include "
ntv2captionlogging.h
"
11
#ifdef MSWindows
12
#include "windows.h"
13
#include "stdio.h"
14
#endif
15
#include <deque>
16
17
22
typedef
struct
QueueData608
23
{
24
bool
fGotData
;
25
UByte
fChar1
;
26
UByte
fChar2
;
27
28
}
QueueData608
;
29
30
34
class
AJAExport
CNTV2Caption608DataQueue
:
public
CNTV2CaptionLogConfig
35
{
36
// INSTANCE METHODS
37
public
:
38
CNTV2Caption608DataQueue
(
const
NTV2Line21Field
inFieldOfInterest =
NTV2_CC608_Field_Invalid
);
39
virtual
~
CNTV2Caption608DataQueue
();
40
41
virtual
void
Flush (
void
);
42
virtual
void
SetField
(
const
NTV2Line21Field
inField) {mFieldOfInterest =
IsValidLine21Field
(inField) ? inField :
NTV2_CC608_Field_Invalid
;}
43
44
virtual
bool
Push608Data (
const
UByte
char1,
const
UByte
char2,
const
bool
bGotData);
45
virtual
bool
Pop608Data (
UByte
& outChar1,
UByte
& outChar2,
bool
& outGotData);
46
virtual
bool
IsEmpty (
void
)
const
;
47
48
virtual
size_t
GetCurrentDepth (
void
)
const
;
49
virtual
size_t
GetMaximumDepth (
void
)
const
;
50
virtual
size_t
GetEnqueueTally (
void
)
const
;
51
virtual
size_t
GetDequeueTally (
void
)
const
;
52
53
54
// Instance Data
55
private
:
56
std::deque <QueueData608> mDataQueue;
57
mutable
void
* mpQueueLock;
58
NTV2Line21Field
mFieldOfInterest;
59
60
// Stats
61
size_t
mEnqueueTally;
62
size_t
mDequeueTally;
63
size_t
mHighestQueueDepth;
64
65
};
// CNTV2Caption608DataQueue
66
67
#endif // __NTV2_CEA608_DATAQUEUE_
QueueData608::fChar1
UByte fChar1
True if my data bytes are valid; otherwise false.
Definition:
ntv2caption608dataqueue.h:25
ntv2caption608types.h
Declares several data types used with 608/SD captioning.
QueueData608
struct QueueData608 QueueData608
Each queue entry has two caption data bytes and a flag that indicates if those bytes contain valid da...
CNTV2Caption608DataQueue::SetField
virtual void SetField(const NTV2Line21Field inField)
Definition:
ntv2caption608dataqueue.h:42
QueueData608::fChar2
UByte fChar2
Caption data byte 1.
Definition:
ntv2caption608dataqueue.h:26
NTV2_CC608_Field_Invalid
@ NTV2_CC608_Field_Invalid
Definition:
ntv2caption608types.h:58
IsValidLine21Field
#define IsValidLine21Field(_field_)
Definition:
ntv2caption608types.h:66
UByte
uint8_t UByte
Definition:
ajatypes.h:248
QueueData608
Each queue entry has two caption data bytes and a flag that indicates if those bytes contain valid da...
Definition:
ntv2caption608dataqueue.h:22
QueueData608::fGotData
bool fGotData
Definition:
ntv2caption608dataqueue.h:24
AJAExport
#define AJAExport
Definition:
export.h:33
CNTV2Caption608DataQueue
I am a simple, thread-safe queue of CEA-608 caption byte pairs.
Definition:
ntv2caption608dataqueue.h:34
CNTV2CaptionLogConfig
Definition:
ntv2captionlogging.h:77
NTV2Line21Field
NTV2Line21Field
The two CEA-608 interlace fields.
Definition:
ntv2caption608types.h:56
ntv2captionlogging.h
Declares the NTV2CaptionLogMask, and the CNTV2CaptionLogConfig class.
libajacc
includes
ntv2caption608dataqueue.h
Generated on Tue Dec 3 2024 10:25:57 for AJA NTV2 SDK by
1.8.17