#include <support/IRandomIterator.h>
Inheritance diagram for BnRandomIterator:
Public Member Functions | |
virtual SValue | Inspect (const sptr< IBinder > &caller, const SValue &which, uint32_t flags=0) |
Probe binder for interface information. | |
virtual sptr< IInterface > | InterfaceFor (const SValue &descriptor, uint32_t flags=0) |
Retrieve direct interface for this binder. | |
void | PushCount (size_t value) |
void | PushIteratorChanged (const sptr< IIterator > &it) |
Pushed when the set of items in an iterator changes. | |
void | PushIteratorDataChanged (const sptr< IIterator > &it, size_t position, const SValue &key, const SValue &value) |
Pushed when the contents of an item in the iterator changes. | |
void | PushOptions (const SValue &value) |
void | PushPosition (size_t value) |
Protected Member Functions | |
virtual sptr< const IBinder > | AsBinderImpl () const |
virtual sptr< IBinder > | AsBinderImpl () |
BnRandomIterator (const SContext &context) | |
BnRandomIterator () | |
virtual status_t | HandleEffect (const SValue &, const SValue &, const SValue &, SValue *) |
virtual status_t | Transact (uint32_t code, SParcel &data, SParcel *reply, uint32_t flags) |
Low-level data transfer. | |
virtual | ~BnRandomIterator () |
|
|
|
|
|
|
|
Reimplemented from IInterface. |
|
Reimplemented from IInterface. |
|
Reimplemented from BBinder. |
|
Probe binder for interface information. Return interfaces implemented by this binder object that are requested by which. This is a composition of all interfaces, expressed as { descriptor -> binder } mappings, which are selected through which. Much more information on Inspect() can be found at Binder Inspect() Details. Reimplemented from BBinder. Reimplemented in BSchemaRowIDJoin::JoinIterator, BSchemaTableNode::QueryIterator, BCatalogDelegate::IteratorDelegate, BGenericIterable::GenericIterator, and BIndexedIterable::IndexedIterator. |
|
Retrieve direct interface for this binder. Given a SValue interface descriptor, return an IInterface implementing it. The default implementation of this function returns NULL, meaning it does not implement a direct interface to it. If the return is non-NULL, you are guaranteed to be able to static_cast<> the returned interface into the requested subclass and have it work. Note that this is NOT the same as calling Inspect(), which performs conversion between different IBinder objects. This method converts to an IInterface only for this binder object. Reimplemented from BBinder. |
|
|
|
Pushed when the set of items in an iterator changes. This event is pushed when the actual items contained in an iterator changes -- i.e., when items are added or removed. Note that you will not actually see the new items until you re-query the iterable. |
|
Pushed when the contents of an item in the iterator changes. An iterator that supports COLLAPSE_NODE should push this when any of the selected sub-data in one of its items have changed. Otherwise, it will only be pushed when the top-level data for an item has changed. |
|
|
|
|
|
Low-level data transfer. This is the Binder's IPC primitive. It allows you to send a parcel of data to another Binder (possibly in another process or language) and get a parcel of data back. The parcel can contain IBinder objects to transfer references between environments. The code can be any arbitrary value, though some standard codes are defined for parts of the higher-level IBinder protocol (B_EFFECT_TRANSACTION, B_INSPECT_TRANSACTION, etc). The flags are used for internal IPC implementation and must always be set to 0 when calling. If your implementation of Transact() returns an error code (instead of B_OK), that code will be propagated back to the caller WITHOUT any reply data. Reimplemented from BBinder. |