Adobe.com
Contents Suites Classes Class Index Member Index

ai::BaseDataFilter Class Reference

Inheritance diagram for ai::BaseDataFilter:
ai::IDataFilter ai::A85DataFilter ai::AsyncDataFilter ai::BlockDataFilter ai::BufferDataFilter ai::FileDataFilter ai::ResourceDataFilter ai::ScopedDataFilter ai::VMDataFilter ai::ZDataFilter ai::ZStdDataFilter

List of all members.

Public Member Functions

 BaseDataFilter (Mode mode=IDataFilter::Mode::kRead)
AIDataFilterGetFirstFilter () const AINOEXCEPT override
 Returns the first filter in this chain, don't use it in a normal case.
AIDataFilterGetFilter () const AINOEXCEPT override
 Returns the effective AIDataFilter, use it to pass to various SDK APIs which requires AIDataFilter.
AIDataFilterReleaseFilter () AINOEXCEPT override
 Releases and returns the effective AIDataFilter without unlinking the filter.
ai::LiteralString GetAIMode () const AINOEXCEPT override
 Returns filter mode to be passed on to AIDataFilter APIs.
Mode GetMode () const AINOEXCEPT override
 Returns the filter mode enum value.
void Read (char *store, size_t &count) override
 AIDataFilterSuite::ReadDataFilter
void Write (const char *store, size_t count) override
 AIDataFilterSuite::WriteDataFilter
void Seek (sizediff_t newPos) override
 AIDataFilterSuite::SeekDataFilter
sizediff_t Mark () const override
 AIDataFilterSuite::MarkDataFilter
void Link (std::unique_ptr< IDataFilter > nextFilter) override
ContentType ReadFilterContent () override
 Returns the entire content of the filter.
size_t ContentSize () override
 Returns the size of the content in bytes.
virtual ~BaseDataFilter ()=0
 BaseDataFilter (BaseDataFilter &&other) AINOEXCEPT
BaseDataFilteroperator= (BaseDataFilter &&other) AINOEXCEPT
void swap (BaseDataFilter &other) AINOEXCEPT
 BaseDataFilter (BaseDataFilter &other)
BaseDataFilteroperator= (const BaseDataFilter &other)

Protected Attributes

AIDataFiltermFilter = nullptr
AIErrorThrower mError = kNoErr
Mode mMode = Mode::kRead
std::unique_ptr< IDataFiltermNextFilter

Constructor & Destructor Documentation

ai::BaseDataFilter::BaseDataFilter ( Mode  mode = IDataFilter::Mode::kRead  )  [inline, explicit]
ai::BaseDataFilter::~BaseDataFilter (  )  [pure virtual]
ai::BaseDataFilter::BaseDataFilter ( BaseDataFilter &&  other  )  [inline]

References swap().

ai::BaseDataFilter::BaseDataFilter ( BaseDataFilter other  ) 

Member Function Documentation

size_t ai::BaseDataFilter::ContentSize (  )  [override, virtual]

Returns the size of the content in bytes.

The size gets computed with forward and backward seeking. Not all DataFilter support seeking.

Implements ai::IDataFilter.

References Mark(), and Seek().

ai::LiteralString ai::BaseDataFilter::GetAIMode (  )  const [override, virtual]
AIDataFilter* ai::BaseDataFilter::GetFilter (  )  const [inline, override, virtual]

Returns the effective AIDataFilter, use it to pass to various SDK APIs which requires AIDataFilter.

Implements ai::IDataFilter.

References mFilter, and mNextFilter.

Referenced by Link(), Mark(), Read(), Seek(), and Write().

AIDataFilter* ai::BaseDataFilter::GetFirstFilter (  )  const [inline, override, virtual]

Returns the first filter in this chain, don't use it in a normal case.

It is used to chain two filter chains together

Implements ai::IDataFilter.

References mFilter.

Mode ai::BaseDataFilter::GetMode (  )  const [inline, override, virtual]

Returns the filter mode enum value.

Implements ai::IDataFilter.

References mMode.

void ai::BaseDataFilter::Link ( std::unique_ptr< IDataFilter nextFilter  )  [override]
ai::sizediff_t ai::BaseDataFilter::Mark (  )  const [override, virtual]
BaseDataFilter& ai::BaseDataFilter::operator= ( const BaseDataFilter other  ) 
BaseDataFilter& ai::BaseDataFilter::operator= ( BaseDataFilter &&  other  )  [inline]

References swap().

void ai::BaseDataFilter::Read ( char *  store,
size_t &  count 
) [override, virtual]
ai::IDataFilter::ContentType ai::BaseDataFilter::ReadFilterContent (  )  [override, virtual]

Returns the entire content of the filter.

Use it only for small files. When the entire content of the filter can be read in a continuous dynamic memory.

Implements ai::IDataFilter.

References Read(), and Seek().

AIDataFilter* ai::BaseDataFilter::ReleaseFilter (  )  [inline, override, virtual]

Releases and returns the effective AIDataFilter without unlinking the filter.

This should only be used when the AIDataFilter is owned by another IDataFilter.

Implements ai::IDataFilter.

References mFilter.

void ai::BaseDataFilter::Seek ( sizediff_t  newPos  )  [override, virtual]
void ai::BaseDataFilter::swap ( BaseDataFilter other  ) 

Referenced by BaseDataFilter(), and operator=().

void ai::BaseDataFilter::Write ( const char *  store,
size_t  count 
) [override, virtual]

Member Data Documentation

Mode ai::BaseDataFilter::mMode = Mode::kRead [protected]

Referenced by GetAIMode(), GetMode(), Read(), and Write().

std::unique_ptr<IDataFilter> ai::BaseDataFilter::mNextFilter [protected]

Referenced by GetFilter(), Link(), and ~BaseDataFilter().


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


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2014 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks