20template<
typename BaseStreamer>
21class configurable_streamer :
public BaseStreamer,
public base::ant::IConfiguration
24 tResult SetStreamerPin(
const ucom::ant::iobject_ptr<streaming::flash::IStreamerPin>& pStreamerPin)
override
26 RETURN_IF_FAILED(BaseStreamer::SetStreamerPin(pStreamerPin));
27 m_pPinConfiguration = ucom::ucom_cast<base::ant::IConfiguration*>(pStreamerPin.Get());
30 tResult GetProperties(ucom::ant::iobject_ptr<const base::ant::IProperties>& pProperties)
const override
32 RETURN_IF_FAILED(CheckState());
33 m_pPinConfiguration->GetProperties(pProperties);
36 tResult GetProperties(ucom::ant::iobject_ptr<base::ant::IProperties>& pProperties)
override
38 RETURN_IF_FAILED(CheckState());
39 m_pPinConfiguration->GetProperties(pProperties);
45 #pragma warning(disable : 4996)
46#elif defined(__GNUC__)
47 #pragma GCC diagnostic push
48 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
51 tResult AttachConfiguration(
const char* strName, base::ant::IConfiguration& oAttachedConfiguration)
override
53 RETURN_IF_FAILED(CheckState());
55 m_pPinConfiguration->AttachConfiguration(strName, oAttachedConfiguration);
58 tResult DetachConfiguration(
const char* strName)
override
60 RETURN_IF_FAILED(CheckState());
61 m_pPinConfiguration->DetachConfiguration(strName);
67#elif defined(__GNUC__)
68 #pragma GCC diagnostic pop
74 if (!m_pPinConfiguration)
76 RETURN_ERROR_DESC(ERR_INVALID_STATE,
"Streamer is not connected to a pin with a configuration interface.");
81 base::ant::IConfiguration* m_pPinConfiguration;
97template <
typename BaseReader = streaming::flash::cDynamicSampleReader>
109template <
typename BaseWriter = streaming::flash::cSampleWriter>
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
#define RETURN_ERROR_DESC(_code,...)
Same as RETURN_ERROR(_error) using a printf like parameter list for detailed error description.
Definition result.h:44
#define RETURN_NOERROR
Return status ERR_NOERROR, which requires the calling function's return type to be tResult.
Definition result.h:29
detail::configurable_streamer< BaseWriter > configurable_writer
Definition configurable_streamers.h:110
detail::configurable_streamer< BaseReader > configurable_reader
Definition configurable_streamers.h:98
Namespace for the ADTF Filter SDK.
Definition configurable_runner.h:18