2727namespace chip {
2828namespace app {
2929namespace Clusters {
30- namespace PushAvStreamTransport {
3130
3231/* *
3332 * @brief Defines interfaces for implementing application-specific logic for the PushAvStreamTransport Delegate.
@@ -58,8 +57,9 @@ class PushAvStreamTransportDelegate
5857 * Allocates the transport and maps it to the connectionID.
5958 * On Success, TransportConfigurationStruct is sent as response by the server.
6059 */
61- virtual Protocols::InteractionModel::Status AllocatePushTransport (const TransportOptionsStruct & transportOptions,
62- const uint16_t connectionID) = 0;
60+ virtual Protocols::InteractionModel::Status
61+ AllocatePushTransport (const PushAvStreamTransport::Structs::TransportOptionsStruct::Type & transportOptions,
62+ const uint16_t connectionID) = 0 ;
6363
6464 /* *
6565 * @brief Handles stream transport deallocation for the provided connectionID.
@@ -82,8 +82,8 @@ class PushAvStreamTransportDelegate
8282 * the PushAVStreamTransport Server. The allocated buffers are cleared and reassigned to modified
8383 * transportOptions on success of ModifyPushTransport and deallocated on success of DeallocatePushTransport.
8484 */
85- virtual Protocols::InteractionModel::Status ModifyPushTransport ( const uint16_t connectionID,
86- const TransportOptionsStorage transportOptions) = 0;
85+ virtual Protocols::InteractionModel::Status
86+ ModifyPushTransport ( const uint16_t connectionID, const PushAvStreamTransport:: TransportOptionsStorage transportOptions) = 0 ;
8787
8888 /* *
8989 * @brief Handles stream transport status modification.
@@ -106,7 +106,7 @@ class PushAvStreamTransportDelegate
106106 * - Emits GeneratePushTransportBeginEvent
107107 */
108108 virtual Protocols::InteractionModel::Status SetTransportStatus (const std::vector<uint16_t > connectionIDList,
109- TransportStatusEnum transportStatus) = 0;
109+ PushAvStreamTransport:: TransportStatusEnum transportStatus) = 0;
110110
111111 /* *
112112 * @brief Requests manual start of the specified push transport.
@@ -121,9 +121,9 @@ class PushAvStreamTransportDelegate
121121 * The delegate should emit PushTransportEnd Event using GeneratePushTransportEndEvent()
122122 * when timeControl values indicate end of transmission.
123123 */
124- virtual Protocols::InteractionModel::Status
125- ManuallyTriggerTransport ( const uint16_t connectionID, TriggerActivationReasonEnum activationReason,
126- const Optional<Structs::TransportMotionTriggerTimeControlStruct::Type> & timeControl) = 0 ;
124+ virtual Protocols::InteractionModel::Status ManuallyTriggerTransport (
125+ const uint16_t connectionID, PushAvStreamTransport:: TriggerActivationReasonEnum activationReason,
126+ const Optional<PushAvStreamTransport:: Structs::TransportMotionTriggerTimeControlStruct::Type> & timeControl) = 0;
127127
128128 /* *
129129 * @brief Validates the provided URL.
@@ -146,7 +146,8 @@ class PushAvStreamTransportDelegate
146146 * camera resources (CPU, memory, network bandwidth).
147147 */
148148 virtual Protocols::InteractionModel::Status
149- ValidateBandwidthLimit (StreamUsageEnum streamUsage, const Optional<DataModel::Nullable<uint16_t >> & videoStreamId,
149+ ValidateBandwidthLimit (PushAvStreamTransport::StreamUsageEnum streamUsage,
150+ const Optional<DataModel::Nullable<uint16_t >> & videoStreamId,
150151 const Optional<DataModel::Nullable<uint16_t >> & audioStreamId) = 0 ;
151152
152153 /* *
@@ -157,7 +158,8 @@ class PushAvStreamTransportDelegate
157158 * @return Status::Success and selected videoStreamID if successful;
158159 * Status::InvalidStream if no allocated VideoStream exists
159160 */
160- virtual Protocols::InteractionModel::Status SelectVideoStream (StreamUsageEnum streamUsage, uint16_t & videoStreamId) = 0;
161+ virtual Protocols::InteractionModel::Status SelectVideoStream (PushAvStreamTransport::StreamUsageEnum streamUsage,
162+ uint16_t & videoStreamId) = 0;
161163
162164 /* *
163165 * @brief Assigns existing Audio Stream based on camera's resource management and stream priority policies.
@@ -167,7 +169,8 @@ class PushAvStreamTransportDelegate
167169 * @return Status::Success and selected audioStreamID if successful;
168170 * Status::InvalidStream if no allocated AudioStream exists
169171 */
170- virtual Protocols::InteractionModel::Status SelectAudioStream (StreamUsageEnum streamUsage, uint16_t & audioStreamId) = 0;
172+ virtual Protocols::InteractionModel::Status SelectAudioStream (PushAvStreamTransport::StreamUsageEnum streamUsage,
173+ uint16_t & audioStreamId) = 0;
171174
172175 /* *
173176 * @brief Validates that the video stream corresponding to videoStreamID is allocated.
@@ -193,7 +196,7 @@ class PushAvStreamTransportDelegate
193196 * @param connectionID The connectionID of the stream transport to check status
194197 * @return busy if transport is uploading, idle otherwise
195198 */
196- virtual PushAvStreamTransportStatusEnum GetTransportBusyStatus (const uint16_t connectionID) = 0;
199+ virtual PushAvStreamTransport:: PushAvStreamTransportStatusEnum GetTransportBusyStatus (const uint16_t connectionID) = 0;
197200
198201 /* *
199202 * @brief Delegate callback for notifying change in an attribute.
@@ -216,7 +219,8 @@ class PushAvStreamTransportDelegate
216219 * @note Required buffers are managed by TransportConfigurationStorage;
217220 * the delegate function must populate the vector correctly.
218221 */
219- virtual CHIP_ERROR LoadCurrentConnections (std::vector<TransportConfigurationStorage> & currentConnections) = 0;
222+ virtual CHIP_ERROR
223+ LoadCurrentConnections (std::vector<PushAvStreamTransport::TransportConfigurationStorage> & currentConnections) = 0 ;
220224
221225 /* *
222226 * @brief Callback after persistent attributes managed by the Cluster are loaded from Storage.
@@ -228,7 +232,6 @@ class PushAvStreamTransportDelegate
228232protected:
229233 EndpointId mEndpointId = kInvalidEndpointId ;
230234};
231- } // namespace PushAvStreamTransport
232235} // namespace Clusters
233236} // namespace app
234237} // namespace chip
0 commit comments