Language:

The Free and Open Productivity Suite
Apache OpenOffice 4.1.4 released

Developer's Guide

API

SDK

Tips 'n' Tricks

Miscellaneous


Methods of Class Reference


~Reference
~Reference() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Destructor: Releases interface if set.

Reference
Reference() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Default Constructor: Sets null reference.

Reference
Reference(
const Reference< interface_type > & rRef ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Copy constructor: Copies interface reference.
Parameters
rRef
another reference

Reference
Reference(
interface_type * pInterface ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Sets given interface pointer.
Parameters
pInterface
an interface pointer

Reference
Reference(
interface_type * pInterface,
__sal_NoAcquire ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Sets given interface pointer without acquiring it.
Parameters
pInterface
another reference
dummy
SAL_NO_ACQUIRE to force obvious distinction to other constructors

Reference
Reference(
interface_type * pInterface,
UnoReference_NoAcquire ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

D E P R E C A T E D
Summary
Constructor: Sets given interface pointer without acquiring it. Deprecated, please use SAL_NO_ACQUIRE version.
Parameters
pInterface
another reference
dummy
UNO_REF_NO_ACQUIRE to force obvious distinction to other constructors

Reference
Reference(
const BaseReference & rRef,
UnoReference_Query )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given interface for reference interface type (interface_type).
Parameters
rRef
another reference
dummy
UNO_QUERY or UNO_REF_QUERY to force obvious distinction to other constructors

Reference
Reference(
XInterface * pInterface,
UnoReference_Query )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given interface for reference interface type (interface_type).
Parameters
pInterface
an interface pointer
dummy
UNO_QUERY to force obvious distinction to other constructors

Reference
Reference(
const Any & rAny,
UnoReference_Query )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given any for reference interface type (interface_type).
Parameters
rAny
an any
dummy
UNO_QUERY to force obvious distinction to other constructors

Reference
Reference(
const BaseReference & rRef,
UnoReference_QueryThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given interface for reference interface type (interface_type). Throws a RuntimeException if the demanded interface cannot be queried.
Parameters
rRef
another reference
dummy
UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious distinction
             to other constructors

Reference
Reference(
XInterface * pInterface,
UnoReference_QueryThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given interface for reference interface type (interface_type). Throws a RuntimeException if the demanded interface cannot be queried.
Parameters
pInterface
an interface pointer
dummy
UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious distinction
             to other constructors

Reference
Reference(
const Any & rAny,
UnoReference_QueryThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: Queries given any for reference interface type (interface_type). Throws a RuntimeException if the demanded interface cannot be queried.
Parameters
rAny
an any
dummy
UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious distinction
             to other constructors

Reference
Reference(
const Reference< interface_type > & rRef,
UnoReference_SetThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: assigns from the given interface of the same type. Throws a RuntimeException if the source interface is .
Parameters
rRef
another interface reference of the same type
dummy
UNO_SET_THROW to distinguish from default copy constructor

Since
UDK 3.2.8

Reference
Reference(
interface_type * pInterface,
UnoReference_SetThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Constructor: assigns from the given interface of the same type. Throws a RuntimeException if the source interface is .
Parameters
pInterface
an interface pointer
dummy
UNO_SET_THROW to distinguish from default assignment constructor

Since
UDK 3.2.8

operator const Reference< XInterface > &
operator const Reference< XInterface > &() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
Cast operator to Reference< XInterface >: Reference objects are binary compatible and any interface must be derived from com.sun.star.uno.XInterface. This a useful direct cast possibility.

operator->
interface_type * operator->() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Dereference operator: Used to call interface methods.
Return
UNacquired interface pointer

get
interface_type * get() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Gets interface pointer. This call does not acquire the interface.
Return
UNacquired interface pointer

clear
void clear() throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Clears reference, i.e. releases interface. Reference is null after clear() call.

set
sal_Bool set(
const Reference< interface_type > & rRef ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Sets the given interface. An interface already set will be released.
Parameters
rRef
another reference
Return
true, if non-null interface was set

set
sal_Bool set(
interface_type * pInterface ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Sets the given interface. An interface already set will be released.
Parameters
pInterface
another interface
Return
true, if non-null interface was set

set
sal_Bool set(
interface_type * pInterface,
__sal_NoAcquire ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Sets interface pointer without acquiring it. An interface already set will be released.
Parameters
pInterface
an interface pointer
dummy
SAL_NO_ACQUIRE to force obvious distinction to set methods
Return
true, if non-null interface was set

set
sal_Bool set(
interface_type * pInterface,
UnoReference_NoAcquire ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

D E P R E C A T E D
Summary
Sets interface pointer without acquiring it. An interface already set will be released. Deprecated, please use SAL_NO_ACQUIRE version.
Parameters
pInterface
an interface pointer
dummy
UNO_REF_NO_ACQUIRE to force obvious distinction to set methods
Return
true, if non-null interface was set

set
sal_Bool set(
XInterface * pInterface,
UnoReference_Query )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Queries given interface for reference interface type (interface_type) and sets it. An interface already set will be released.
Parameters
pInterface
an interface pointer
dummy
UNO_QUERY or UNO_REF_QUERY to force obvious distinction to set methods
Return
true, if non-null interface was set

set
sal_Bool set(
const BaseReference & rRef,
UnoReference_Query )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Queries given interface for reference interface type (interface_type) and sets it. An interface already set will be released.
Parameters
rRef
another reference
dummy
UNO_QUERY or UNO_REF_QUERY to force obvious distinction to set methods
Return
true, if non-null interface was set

set
bool set(
const Any & rAny,
UnoReference_Query );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Queries given any for reference interface type (interface_type) and sets it. An interface already set will be released.
Parameters
rAny
       an Any containing an interface
dummy
       UNO_QUERY or UNO_REF_QUERY to force obvious distinction
       to set methods
Return
true, if non-null interface was set

set
void set(
XInterface * pInterface,
UnoReference_QueryThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
Queries given interface for reference interface type (interface_type) and sets it. An interface already set will be released. Throws a RuntimeException if the demanded interface cannot be set.
Parameters
pInterface
an interface pointer
dummy
UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious distinction
             to set methods

set
void set(
const BaseReference & rRef,
UnoReference_QueryThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
Queries given interface for reference interface type (interface_type) and sets it. An interface already set will be released. Throws a RuntimeException if the demanded interface cannot be set.
Parameters
rRef
another reference
dummy
UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious distinction
       to set methods

set
void set(
const Any & rAny,
UnoReference_QueryThrow );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
Queries given any for reference interface type (interface_type) and sets it. An interface already set will be released. Throws a RuntimeException if the demanded interface cannot be set.
Parameters
rAny
       an Any containing an interface
dummy
       UNO_QUERY_THROW or UNO_REF_QUERY_THROW to force obvious
       distinction to set methods

set
void set(
interface_type * pInterface,
UnoReference_SetThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
sets the given interface An interface already set will be released. Throws a RuntimeException if the source interface is .
Parameters
pInterface
an interface pointer
dummy
UNO_SET_THROW to force obvious distinction to other set methods

Since
UDK 3.2.8

set
void set(
const Reference< interface_type > & rRef,
UnoReference_SetThrow )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Description
sets the given interface An interface already set will be released. Throws a RuntimeException if the source interface is .
Parameters
rRef
an interface reference
dummy
UNO_SET_THROW to force obvious distinction to other set methods

Since
UDK 3.2.8

operator=
Reference< interface_type > & operator=(
interface_type * pInterface ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Assignment operator: Acquires given interface pointer and sets reference. An interface already set will be released.
Parameters
pInterface
an interface pointer
Return
this reference

operator=
Reference< interface_type > & operator=(
const Reference< interface_type > & rRef ) throw();

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO NO YES NO

Summary
Assignment operator: Acquires given interface reference and sets reference. An interface already set will be released.
Parameters
rRef
an interface reference
Return
this reference

iquery
static XInterface * iquery(
XInterface * pInterface )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Queries given interface for type interface_type.
Parameters
pInterface
interface pointer
Return
interface of demanded type (may be null)

iquery_throw
static XInterface * iquery_throw(
XInterface * pInterface )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Queries given interface for type interface_type. Throws a RuntimeException if the demanded interface cannot be queried.
Parameters
pInterface
interface pointer
Return
interface of demanded type

iset_throw
static interface_type * iset_throw(
interface_type * pInterface )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Returns the given interface if it is not , throws a RuntimeException otherwise.
Parameters
pInterface
interface pointer
Return
pInterface

castFromXInterface
static interface_type * castFromXInterface(
XInterface * p );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Cast from an "interface pointer" (e.g., BaseReference::_pInterface) to a pointer to this interface_type.
Description
To work around ambiguities in the case of multiple-inheritance interface types (which inherit XInterface more than once), use reinterpret_cast (resp. a sequence of two static_casts, to avoid warnings about reinterpret_cast used between related classes) to switch from a pointer to XInterface to a pointer to this derived interface_type. In principle, this is not guaranteed to work. In practice, it seems to work on all supported platforms.

castToXInterface
static XInterface * castToXInterface(
interface_type * p );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Cast from a pointer to this interface_type to an "interface pointer" (e.g., BaseReference::_pInterface).
Description
To work around ambiguities in the case of multiple-inheritance interface types (which inherit XInterface more than once), use reinterpret_cast (resp. a sequence of two static_casts, to avoid warnings about reinterpret_cast used between related classes) to switch from a pointer to this derived interface_type to a pointer to XInterface. In principle, this is not guaranteed to work. In practice, it seems to work on all supported platforms.

query
static Reference< interface_type > query(
const BaseReference & rRef )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Queries given interface reference for type interface_type.
Parameters
rRef
interface reference
Return
interface reference of demanded type (may be null)

query
static Reference< interface_type > query(
XInterface * pInterface )
throw( RuntimeException );

virtual abstract const volatile template static inline C-linkage
NO NO NO NO NO YES YES NO

Summary
Queries given interface for type interface_type.
Parameters
pInterface
interface pointer
Return
interface reference of demanded type (may be null)

Top of Page

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache and the Apache feather logo are trademarks of The Apache Software Foundation. OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.