nx_server_plugin_sdk 1.0 Server Plugin SDK

Public Member Functions | List of all members
nx::vms_server_plugins::cloud_storage::stub::StreamWriter Class Reference
Inheritance diagram for nx::vms_server_plugins::cloud_storage::stub::StreamWriter:

## Public Member Functions
| StreamWriter (const std::shared_ptr< DataManager > &dataManager, const std::string &deviceId, int streamIndex, int64_t startTimeMs, const nx::sdk::IList< nx::sdk::cloud_storage::ICodecInfo > *codecList, const char *opaqueMetadata)
virtual nx::sdk::ErrorCode | putData (const nx::sdk::cloud_storage::IMediaDataPacket *packet) override
virtual nx::sdk::ErrorCode | close (int64_t durationMs) override
virtual int | size () const override
Public Member Functions inherited from nx::sdk::RefCountable< nx::sdk::cloud_storage::IStreamWriter >
| RefCountable (const RefCountable &)=delete
| RefCountable (RefCountable &&)=delete
RefCountable & | operator= (const RefCountable &)=delete
RefCountable & | operator= (RefCountable &&)=delete
virtual int | addRef () const override
virtual int | releaseRef () const override
int | refCount () const
Public Member Functions inherited from nx::sdk::Interface< IStreamWriter >
virtual IRefCountable * | queryInterface (const InterfaceId *id)
Ptr< Interface > | queryInterface ()
Ptr< const Interface > | queryInterface () const
Public Member Functions inherited from nx::sdk::IRefCountable
virtual | ~IRefCountable ()=default
template<class Interface >
Ptr< Interface > | queryInterface ()
template<class Interface >
Ptr< const Interface > | queryInterface () const
int | refCountThreadUnsafe () const

## Additional Inherited Members
Static Public Member Functions inherited from nx::sdk::cloud_storage::IStreamWriter
static auto | interfaceId ()
Static Public Member Functions inherited from nx::sdk::IRefCountable
static auto | interfaceId ()
Protected Member Functions inherited from nx::sdk::Interface< IStreamWriter >
virtual IRefCountable * | queryInterface (const IRefCountable::InterfaceId *id) override
IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)
Static Protected Member Functions inherited from nx::sdk::IRefCountable
template<int len>
static const InterfaceId * | makeId (const char(&charArray)[len])
template<int len, int alternativeLen>
static std::vector< const InterfaceId * > | makeIdWithAlternative (const char(&charArray)[len], const char(&alternativeCharArray)[alternativeLen])
template<class TemplateInstance , class TemplateArg , int len>
static const InterfaceId * | makeIdForTemplate (const char(&baseIdCharArray)[len])
static std::vector< const InterfaceId * > | alternativeInterfaceIds (const InterfaceId *id)
static std::vector< const InterfaceId * > | alternativeInterfaceIds (std::vector< const InterfaceId *> ids)

## Member Function Documentation

## ◆ close()

nx::sdk::ErrorCode nx::vms_server_plugins::cloud_storage::stub::StreamWriter::close | ( | int64_t | durationMs | ) |
| overridevirtual

This function will be called just before destruction of the StreamWriter object and no other calls (except destructor) will follow.

Implements nx::sdk::cloud_storage::IStreamWriter.

## ◆ putData()

nx::sdk::ErrorCode nx::vms_server_plugins::cloud_storage::stub::StreamWriter::putData | ( | const nx::sdk::cloud_storage::IMediaDataPacket * | packet | ) |
| overridevirtual

Write a data packet. Implementation is discouraged to buffer packets. Instead, it should block until the data is completely processed.

packet->channelNumber() corresponds to ICodecInfo::channelNumber() i.e. if packet->type() == dptVideo && packet->channelNumber() == 1, then CodecInfo with mediaType == AVMEDIA_TYPE_VIDEO && channelNumber == 1 can be used to process this packet.

If packet->type() == dptAudio && packet->channelNumber() == 0, then CodecInfo with mediaType == AVMEDIA_TYPE_AUDIO && channelNumber == 0 can be used to process this packet.

If packet->type() == dptData && packet->channelNumber() == 0, then CodecInfo with mediaType == AVMEDIA_TYPE_DATA && channelNumber == 0 can be used to process this packet.

Implements nx::sdk::cloud_storage::IStreamWriter.

## ◆ size()

int nx::vms_server_plugins::cloud_storage::stub::StreamWriter::size | ( |  | ) | const
| overridevirtual

Total size of written data so far.

Implements nx::sdk::cloud_storage::IStreamWriter.

The documentation for this class was generated from the following files:

- samples/cloud_storage/stub_cloud_storage_plugin/src/nx/vms_server_plugins/cloud_storage/stub/stream_writer.h
- samples/cloud_storage/stub_cloud_storage_plugin/src/nx/vms_server_plugins/cloud_storage/stub/stream_writer.cpp