Pepper_31_C++_interfaces
Public Member Functions | Protected Member Functions | List of all members
pp::Resource Class Reference

A reference counted module resource. More...

#include <resource.h>

Inheritance diagram for pp::Resource:
Inheritance graph
Collaboration diagram for pp::Resource:
Collaboration graph

Public Member Functions

 Resource ()
 The default constructor. More...
 
 Resource (const Resource &other)
 
virtual ~Resource ()
 Destructor. More...
 
Resourceoperator= (const Resource &other)
 
bool is_null () const
 
PP_Resource pp_resource () const
 
PP_Resource detach ()
 

Protected Member Functions

 Resource (PP_Resource resource)
 
 Resource (PassRef, PP_Resource resource)
 
void PassRefFromConstructor (PP_Resource resource)
 

Detailed Description

A reference counted module resource.

Definition at line 18 of file resource.h.

Constructor & Destructor Documentation

pp::Resource::Resource ( )

The default constructor.

pp::Resource::Resource ( const Resource other)

A constructor for copying a resource.

Parameters
[in]otherA Resource.
virtual pp::Resource::~Resource ( )
virtual

Destructor.

pp::Resource::Resource ( PP_Resource  resource)
explicitprotected

A constructor used when a PP_Resource is provided as a return value whose reference count we need to increment.

Parameters
[in]resourceA PP_Resource corresponding to a resource.
pp::Resource::Resource ( PassRef  ,
PP_Resource  resource 
)
protected

Constructor used when a PP_Resource already has a ref count assigned. Add additional refcount is not taken.

Member Function Documentation

PP_Resource pp::Resource::detach ( )

This function releases ownership of this resource and returns it to the caller.

Note that the reference count on the resource is unchanged and the caller needs to release the resource.

Returns
The detached PP_Resource.
bool pp::Resource::is_null ( ) const
inline

This functions determines if this resource is invalid or uninitialized.

Returns
true if this resource is invalid or uninitialized.

Definition at line 43 of file resource.h.

Resource& pp::Resource::operator= ( const Resource other)

This function assigns one Resource to another Resource.

Parameters
[in]otherA Resource.
Returns
A Resource containing the assigned Resource.
void pp::Resource::PassRefFromConstructor ( PP_Resource  resource)
protected

PassRefFromConstructor is called by derived class' constructors to initialize this Resource with a PP_Resource that has already had its reference count incremented by Core::AddRefResource. It also assumes this object has no current resource.

The intended usage of this function that the derived class constructor will call the default Resource constructor, then make a call to create a resource. It then wants to assign the new resource (which, since it was returned by the browser, already had its reference count increased).

Parameters
[in]resourceA PP_Resource corresponding to a resource.
PP_Resource pp::Resource::pp_resource ( ) const
inline

Definition at line 45 of file resource.h.

Referenced by operator==().


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