|
AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
|
Go to the documentation of this file.
8 #ifndef NTV2SIGNALROUTER_H
9 #define NTV2SIGNALROUTER_H
108 virtual inline void Reset (
void) {mConnections.clear ();}
137 virtual inline bool IsEmpty (
void)
const {
return mConnections.empty();}
189 virtual std::ostream & Print (std::ostream & inOutStream,
const bool inForRetailDisplay =
false)
const;
234 typedef NTV2XptConnections::iterator NTV2XptConnectionsIter;
250 static bool GetRouteROMInfoFromReg (
const ULWord inROMRegNum,
const ULWord inROMRegValue,
252 const bool inAppendOutputXpts =
false);
260 static bool GetPossibleConnections (
const NTV2RegReads & inROMRegisters,
268 static bool MakeRouteROMRegisters (
NTV2RegReads & outROMRegisters);
292 static NTV2InputXptID StringToNTV2InputCrosspointID (
const std::string & inStr);
300 static NTV2OutputXptID StringToNTV2OutputCrosspointID (
const std::string & inStr);
443 static bool IsSDIInputWidgetType (
const NTV2WidgetType inWidgetType);
449 static bool IsSDIOutputWidgetType (
const NTV2WidgetType inWidgetType);
455 static bool Is3GSDIWidgetType (
const NTV2WidgetType inWidgetType);
461 static bool Is12GSDIWidgetType (
const NTV2WidgetType inWidgetType);
467 static bool IsDualLinkWidgetType (
const NTV2WidgetType inWidgetType);
473 static bool IsDualLinkInWidgetType (
const NTV2WidgetType inWidgetType);
479 static bool IsDualLinkOutWidgetType (
const NTV2WidgetType inWidgetType);
491 static bool IsHDMIInWidgetType (
const NTV2WidgetType inWidgetType);
497 static bool IsHDMIOutWidgetType (
const NTV2WidgetType inWidgetType);
521 static bool CreateFromString (
const std::string & inString,
NTV2XptConnections & outConnections);
531 static bool CreateFromString (
const std::string & inString,
CNTV2SignalRouter & outRouter);
542 static bool ToCodeString (std::string & outCode,
const NTV2XptConnections & inConnections,
545 static bool IsInitialized(
void);
554 static bool Initialize(
void);
563 static bool Deinitialize(
void);
637 const bool inIsHDMI_RGB =
false,
const UWord inHDMI_Quadrant = 0);
721 #endif // NTV2SIGNALROUTER_H
virtual ULWord GetNumberOfConnections(void) const
bool mShowComments
If true, show comments in the generated code.
virtual bool IsEmpty(void) const
NTV2InputXptID GetSDIOutputInputXpt(const NTV2Channel inSDIOutput, const bool inIsDS2=false)
NTV2OutputXptID GetSDIInputOutputXptFromChannel(const NTV2Channel inSDIInput, const bool inIsDS2=false)
Defines the import/export macros for producing DLLs or LIBs.
std::set< NTV2InputXptID > NTV2InputCrosspointIDSet
NTV2InputXptID GetMixerFGInputXpt(const NTV2Channel inChannel, const bool inIsKey=false)
NTV2OutputDestination
Identifies a specific video output destination.
std::string mFieldBreakText
Text to use for field breaks.
NTV2XptConnections mChanged
Optional, to show changed connections.
std::string mLineBreakText
Text to use for line breaks.
std::set< NTV2InputXptID > NTV2InputXptIDSet
A collection of distinct NTV2InputXptID values.
NTV2InputXptID GetDLInInputXptFromChannel(const NTV2Channel inChannel, const bool inLinkB=false)
NTV2XptConnections::const_iterator NTV2XptConnectionsConstIter
NTV2Channel
These enum values are mostly used to identify a specific widget_framestore. They're also commonly use...
bool mUseRouter
If true, use calls to CNTV2DeviceRouter instead of CNTV2Card.
std::string mPreFunctionText
Function name prefix text.
std::string mPostClassText
Class postfix text.
std::string mRouterVarName
Name to use for CNTV2DeviceRouter variable.
NTV2InputXptID GetFrameBufferInputXptFromChannel(const NTV2Channel inFrameStore, const bool inIsBInput=false)
std::pair< NTV2InputXptID, NTV2OutputXptID > NTV2XptConnection
NTV2DeviceID
Identifies a specific AJA NTV2 device model number. The NTV2DeviceID is actually the PROM part number...
NTV2OutputXptID GetLUTOutputXptFromChannel(const NTV2Channel inLUT)
bool operator==(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
std::string mPostVariableText
Variable postfix text.
enum NTV2InputCrosspointID NTV2InputXptID
NTV2InputXptID GetLUTInputXptFromChannel(const NTV2Channel inLUT)
std::string mPostCommentText
Comment postfix text.
NTV2OutputXptID GetMixerOutputXptFromChannel(const NTV2Channel inChannel, const bool inIsKey=false)
std::set< NTV2OutputXptID > NTV2OutputCrosspointIDSet
NTV2InputXptID GetOutputDestInputXpt(const NTV2OutputDestination inOutputDest, const bool inIsSDI_DS2=false, const UWord inHDMI_Quadrant=99)
NTV2WidgetIDSet::const_iterator NTV2WidgetIDSetConstIter
An iterator for iterating over a read-only NTV2WidgetIDSet.
NTV2InputXptIDSet::const_iterator NTV2InputXptIDSetConstIter
A const iterator for iterating over an NTV2InputXptIDSet.
NTV2InputXptID GetMixerBGInputXpt(const NTV2Channel inChannel, const bool inIsKey=false)
virtual NTV2XptConnections GetConnections(void) const
NTV2InputXptIDSet::iterator NTV2InputXptIDSetIter
A non-const iterator for iterating over an NTV2InputXptIDSet.
std::string mPreCommentText
Comment prefix text.
NTV2XptConnections::const_iterator NTV2ActualConnectionsConstIter
std::string mPostFunctionText
Function name postfix text.
NTV2OutputXptID GetCSCOutputXptFromChannel(const NTV2Channel inCSC, const bool inIsKey=false, const bool inIsRGB=false)
bool mShowDeclarations
If true, show variable declarations in the generated code.
NTV2XptConnections mNew
Optional, to show new connections.
std::string mPostXptText
Crosspoint variable postfix text.
std::string NTV2InputCrosspointIDToString(const NTV2InputCrosspointID inValue, const bool inForRetailDisplay=false)
NTV2RegWrites NTV2RegisterReads
NTV2InputXptID GetCSCInputXptFromChannel(const NTV2Channel inCSC, const bool inIsKeyInput=false)
NTV2InputXptIDSet::const_iterator NTV2InputCrosspointIDSetConstIter
std::set< NTV2OutputXptID > NTV2OutputXptIDSet
A collection of distinct NTV2OutputXptID values.
std::string mDeviceVarName
Name to use for CNTV2Card variable.
NTV2PossibleConnections::const_iterator NTV2PossibleConnectionsConstIter
std::pair< NTV2InputXptID, NTV2OutputXptID > NTV2Connection
This links an NTV2InputXptID and an NTV2OutputXptID.
std::string mPreClassText
Class prefix text.
This class is a collection of widget input-to-output connections that can be applied all-at-once to a...
NTV2OutputXptID GetDLInOutputXptFromChannel(const NTV2Channel inDLInput)
NTV2OutputCrosspointIDSet NTV2CrosspointIDSet
NTV2InputSource
Identifies a specific video input source.
bool operator!=(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
NTV2OutputXptIDSet::const_iterator NTV2OutputXptIDSetConstIter
A const iterator for iterating over an NTV2OutputXptIDSet.
std::vector< NTV2RegInfo > NTV2RegisterWrites
std::pair< NTV2InputXptID, NTV2OutputXptID > NTV2SignalConnection
NTV2OutputXptID GetFrameBufferOutputXptFromChannel(const NTV2Channel inFrameStore, const bool inIsRGB=false, const bool inIs425=false)
std::map< NTV2InputXptID, NTV2OutputXptID > NTV2XptConnections
NTV2OutputXptID GetTSIMuxOutputXptFromChannel(const NTV2Channel inTSIMuxer, const bool inLinkB=false, const bool inIsRGB=false)
std::string mPreXptText
Crosspoint variable prefix text.
std::multimap< NTV2InputXptID, NTV2OutputXptID > NTV2PossibleConnections
A map of zero or more one-to-many possible NTV2InputXptID to NTV2OutputXptID connections.
NTV2OutputXptID GetInputSourceOutputXpt(const NTV2InputSource inInputSource, const bool inIsSDI_DS2=false, const bool inIsHDMI_RGB=false, const UWord inHDMI_Quadrant=0)
NTV2InputXptIDSet::iterator NTV2InputCrosspointIDSetIter
std::map< NTV2InputXptID, NTV2OutputXptID > NTV2ActualConnections
A map of zero or more one-to-one actual NTV2InputXptID to NTV2OutputXptID connections.
enum NTV2OutputCrosspointID NTV2OutputXptID
NTV2RegWrites NTV2RegReads
An ordered sequence of zero or more NTV2RegInfo structs intended for ReadRegister.
NTV2InputXptID GetDLOutInputXptFromChannel(const NTV2Channel inDLOutWidget)
Declares enums and structs used by all platform drivers and the SDK.
NTV2OutputXptIDSet::iterator NTV2OutputCrosspointIDSetIter
std::string NTV2OutputCrosspointIDToString(const NTV2OutputCrosspointID inValue, const bool inForRetailDisplay=false)
NTV2OutputXptIDSet::const_iterator NTV2OutputCrosspointIDSetConstIter
virtual bool ResetFrom(const NTV2XptConnections &inConnections)
Resets me, replacing any/all existing connections with the given connections.
NTV2OutputXptIDSet::iterator NTV2OutputXptIDSetIter
A non-const iterator for iterating over an NTV2OutputXptIDSet.
virtual void Reset(void)
Resets me, erasing any/all existing connections.
NTV2InputXptID GetTSIMuxInputXptFromChannel(const NTV2Channel inTSIMuxer, const bool inLinkB=false)
@ DEVICE_ID_NOTFOUND
Invalid or "not found".
std::set< NTV2WidgetID > NTV2WidgetIDSet
A collection of distinct NTV2WidgetID values.
NTV2XptConnections mMissing
Optional, to show deleted connections.
NTV2OutputXptID GetDLOutOutputXptFromChannel(const NTV2Channel inDLOutput, const bool inIsLinkB=false)
std::ostream & operator<<(std::ostream &inOutStream, const NTV2OutputXptIDSet &inObj)
std::string mPreVariableText
Variable prefix text.