firebase::
  
    #include <data_snapshot.h>
  
A DataSnapshot instance contains data from a Firebase Database location.
Summary
Any time you read Database data, you receive the data as a DataSnapshot. These are efficiently-generated and cannot be changed. To modify data, use DatabaseReference::SetValue() or DatabaseReference::RunTransaction().
| Constructors and Destructors | |
|---|---|
| DataSnapshot()Default constructor.  | |
| DataSnapshot(const DataSnapshot & snapshot)Copy constructor.  | |
| DataSnapshot(DataSnapshot && snapshot)Move constructor.  | |
| ~DataSnapshot()Destructor.  | 
| Public functions | |
|---|---|
| Child(const char *path) const  | Get a DataSnapshot for the location at the specified relative path.  | 
| Child(const std::string & path) const  | Get a DataSnapshot for the location at the specified relative path.  | 
| GetReference() const  | Obtain a DatabaseReference to the source location for this snapshot.  | 
| HasChild(const char *path) const  | boolDoes this DataSnapshot have data at a particular location?  | 
| HasChild(const std::string & path) const  | boolDoes this DataSnapshot have data at a particular location?  | 
| children() const  | std::vector< DataSnapshot >Get all the immediate children of this location.  | 
| children_count() const  | size_tGet the number of children of this location.  | 
| exists() const  | boolReturns true if the data is non-empty.  | 
| has_children() const  | boolDoes this DataSnapshot have any children at all?  | 
| is_valid() const  | boolReturns true if this snapshot is valid, false if it is not valid.  | 
| key() const  | const char *Get the key name of the source location of this snapshot.  | 
| key_string() const  | std::stringGet the key name of the source location of this snapshot.  | 
| operator=(const DataSnapshot & snapshot) | Copy assignment operator.  | 
| operator=(DataSnapshot && snapshot) | Move assignment operator.  | 
| priority() const  | Get the priority of the data contained in this snapshot.  | 
| value() const  | Get the value of the data contained in this snapshot.  | 
Public functions
Child
DataSnapshot Child( const char *path ) const
Get a DataSnapshot for the location at the specified relative path.
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | A DataSnapshot corresponding to specified child location.  | 
Child
DataSnapshot Child( const std::string & path ) const
Get a DataSnapshot for the location at the specified relative path.
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | A DataSnapshot corresponding to specified child location.  | 
DataSnapshot
DataSnapshot()
Default constructor.
This DataSnapshot contains nothing and is considered invalid (i.e. is_valid() == false). Use this to construct an empty DataSnapshot that you will later populate with data from a database callback.
DataSnapshot
DataSnapshot( const DataSnapshot & snapshot )
Copy constructor.
DataSnapshots are immutable, so they can be efficiently copied.
| Details | |||
|---|---|---|---|
| Parameters | 
 | 
DataSnapshot
DataSnapshot( DataSnapshot && snapshot )
Move constructor.
DataSnapshots are immutable, so they can be efficiently moved.
| Details | |||
|---|---|---|---|
| Parameters | 
 | 
GetReference
DatabaseReference GetReference() const
Obtain a DatabaseReference to the source location for this snapshot.
| Details | |
|---|---|
| Returns | A DatabaseReference corresponding to same location as this snapshot.  | 
HasChild
bool HasChild( const char *path ) const
Does this DataSnapshot have data at a particular location?
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | True if the snapshot has data at the specified location, false if not.  | 
HasChild
bool HasChild( const std::string & path ) const
Does this DataSnapshot have data at a particular location?
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | True if the snapshot has data at the specified location, false if not.  | 
children
std::vector< DataSnapshot > children() const
Get all the immediate children of this location.
| Details | |
|---|---|
| Returns | The immediate children of this snapshot.  | 
children_count
size_t children_count() const
Get the number of children of this location.
| Details | |
|---|---|
| Returns | The number of immediate children of this snapshot.  | 
exists
bool exists() const
Returns true if the data is non-empty.
has_children
bool has_children() const
Does this DataSnapshot have any children at all?
| Details | |
|---|---|
| Returns | True if the snapshot has any children, false otherwise.  | 
is_valid
bool is_valid() const
Returns true if this snapshot is valid, false if it is not valid.
An invalid snapshot could be returned by a transaction where an error has occurred.
| Details | |
|---|---|
| Returns | true if this snapshot is valid, false if this snapshot is invalid.  | 
key
const char * key() const
Get the key name of the source location of this snapshot.
| Details | |
|---|---|
| Returns | Key name of the source location of this snapshot.  | 
key_string
std::string key_string() const
Get the key name of the source location of this snapshot.
| Details | |
|---|---|
| Returns | Key name of the source location of this snapshot.  | 
operator=
DataSnapshot & operator=( const DataSnapshot & snapshot )
Copy assignment operator.
DataSnapshots are immutable, so they can be efficiently copied.
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | Reference to the destination DataSnapshot.  | 
operator=
DataSnapshot & operator=( DataSnapshot && snapshot )
Move assignment operator.
DataSnapshots are immutable, so they can be efficiently moved.
| Details | |||
|---|---|---|---|
| Parameters | 
 | ||
| Returns | Reference to this destination DataSnapshot.  | 
priority
Variant priority() const
Get the priority of the data contained in this snapshot.
| Details | |
|---|---|
| Returns | The value of this location's Priority relative to its siblings.  | 
value
Variant value() const
Get the value of the data contained in this snapshot.
| Details | |
|---|---|
| Returns | The value of the data contained in this location.  | 
~DataSnapshot
~DataSnapshot()
Destructor.