LibreOffice Module slideshow (master) 1
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
slideshow::internal::AnimationAudioNode Class Reference

Audio node. More...

#include <animationaudionode.hxx>

Inheritance diagram for slideshow::internal::AnimationAudioNode:
[legend]
Collaboration diagram for slideshow::internal::AnimationAudioNode:
[legend]

Public Member Functions

 AnimationAudioNode (css::uno::Reference< css::animations::XAnimationNode > const &xNode, BaseContainerNodeSharedPtr const &pParent, NodeContext const &rContext)
 
- Public Member Functions inherited from slideshow::internal::BaseNode
 BaseNode (css::uno::Reference< css::animations::XAnimationNode > const &xNode, BaseContainerNodeSharedPtr pParent, NodeContext const &rContext)
 
 BaseNode (const BaseNode &)=delete
 
BaseNodeoperator= (const BaseNode &)=delete
 
void setSelf (const BaseNodeSharedPtr &rSelf)
 Provide the node with a shared_ptr to itself. More...
 
virtual void showState () const
 
virtual const char * getDescription () const
 
const ::std::shared_ptr< BaseContainerNode > & getParentNode () const
 
virtual void dispose () override
 Dispose all object references. More...
 
virtual bool init () override
 Init this node. More...
 
virtual bool resolve () override
 Resolve node start time. More...
 
virtual void activate () override
 Immediately start this node. More...
 
virtual void deactivate () override
 Immediately stop this node. More...
 
virtual void end () override
 End the animation on this node. More...
 
virtual css::uno::Reference< css::animations::XAnimationNode > getXAnimationNode () const override
 Query the corresponding XAnimationNode. More...
 
virtual NodeState getState () const override
 Query node state. More...
 
virtual bool registerDeactivatingListener (const AnimationNodeSharedPtr &rNotifee) override
 Register a deactivating listener. More...
 
virtual void notifyDeactivating (const AnimationNodeSharedPtr &rNotifier) override
 Called to notify another AnimationNode's deactivation. More...
 
bool isMainSequenceRootNode () const
 
sal_Int16 getFillMode ()
 Get the node's fill mode. More...
 
virtual void removeEffect () override
 Called by the container to remove the animation effect to make the painted shape correct if it restart because of repeat or rewind ( fill mode is AnimationFill::REMOVE ) to start state. More...
 
virtual css::uno::Reference< css::animations::XAnimationNode > getXAnimationNode () const =0
 Query the corresponding XAnimationNode. More...
 
virtual bool init ()=0
 Init this node. More...
 
virtual bool resolve ()=0
 Resolve node start time. More...
 
virtual void activate ()=0
 Immediately start this node. More...
 
virtual void deactivate ()=0
 Immediately stop this node. More...
 
virtual void end ()=0
 End the animation on this node. More...
 
virtual NodeState getState () const =0
 Query node state. More...
 
virtual bool registerDeactivatingListener (const AnimationNodeSharedPtr &rNotifee)=0
 Register a deactivating listener. More...
 
virtual void notifyDeactivating (const AnimationNodeSharedPtr &rNotifier)=0
 Called to notify another AnimationNode's deactivation. More...
 
virtual void removeEffect ()=0
 Called by the container to remove the animation effect to make the painted shape correct if it restart because of repeat or rewind ( fill mode is AnimationFill::REMOVE ) to start state. More...
 
virtual bool hasPendingAnimation () const =0
 Query node whether it has an animation pending. More...
 
- Public Member Functions inherited from slideshow::internal::Disposable
virtual ~Disposable ()
 
virtual void dispose ()=0
 Dispose all object references. More...
 
- Public Member Functions inherited from slideshow::internal::AnimationEventHandler
virtual ~AnimationEventHandler ()
 
virtual bool handleAnimationEvent (const AnimationNodeSharedPtr &rNode)=0
 Handle the event. More...
 

Protected Member Functions

virtual void dispose () override
 Dispose all object references. More...
 
- Protected Member Functions inherited from slideshow::internal::BaseNode
void scheduleDeactivationEvent (EventSharedPtr const &pEvent=EventSharedPtr())
 
SlideShowContext const & getContext () const
 
::std::shared_ptr< BaseNode > const & getSelf () const
 
bool checkValidNode () const
 

Private Member Functions

virtual void activate_st () override
 
virtual void deactivate_st (NodeState eDestState) override
 
virtual bool hasPendingAnimation () const override
 Query node whether it has an animation pending. More...
 
virtual bool handleAnimationEvent (const AnimationNodeSharedPtr &rNode) override
 overridden, because we need to deal with STOPAUDIO commands More...
 
void createPlayer () const
 
void resetPlayer () const
 
void checkPlayingStatus ()
 

Private Attributes

css::uno::Reference< css::animations::XAudio > mxAudioNode
 
OUString maSoundURL
 
SoundPlayerSharedPtr mpPlayer
 

Additional Inherited Members

- Public Types inherited from slideshow::internal::AnimationNode
enum  NodeState {
  INVALID = 0 ,
  UNRESOLVED = 1 ,
  RESOLVED = 2 ,
  ACTIVE = 4 ,
  FROZEN = 8 ,
  ENDED = 16
}
 The current state of this AnimationNode. More...
 

Detailed Description

Audio node.

This animation node contains an audio effect. Duration and start/stop behaviour is affected by the referenced audio file.

Definition at line 35 of file animationaudionode.hxx.

Constructor & Destructor Documentation

◆ AnimationAudioNode()

slideshow::internal::AnimationAudioNode::AnimationAudioNode ( css::uno::Reference< css::animations::XAnimationNode > const &  xNode,
BaseContainerNodeSharedPtr const &  pParent,
NodeContext const &  rContext 
)

Member Function Documentation

◆ activate_st()

void slideshow::internal::AnimationAudioNode::activate_st ( )
overrideprivatevirtual

◆ checkPlayingStatus()

void slideshow::internal::AnimationAudioNode::checkPlayingStatus ( )
private

◆ createPlayer()

void slideshow::internal::AnimationAudioNode::createPlayer ( ) const
private

◆ deactivate_st()

void slideshow::internal::AnimationAudioNode::deactivate_st ( NodeState  eDestState)
overrideprivatevirtual

◆ dispose()

void slideshow::internal::AnimationAudioNode::dispose ( )
overrideprotectedvirtual

Dispose all object references.

An implementor of this method must first call dispose() on any of its external references, and release them after that.

Reimplemented from slideshow::internal::BaseNode.

Definition at line 51 of file animationaudionode.cxx.

References slideshow::internal::BaseNode::dispose(), mxAudioNode, and resetPlayer().

◆ handleAnimationEvent()

bool slideshow::internal::AnimationAudioNode::handleAnimationEvent ( const AnimationNodeSharedPtr rNode)
overrideprivatevirtual

overridden, because we need to deal with STOPAUDIO commands

Implements slideshow::internal::AnimationEventHandler.

Definition at line 181 of file animationaudionode.cxx.

References slideshow::internal::BaseNode::deactivate().

◆ hasPendingAnimation()

bool slideshow::internal::AnimationAudioNode::hasPendingAnimation ( ) const
overrideprivatevirtual

Query node whether it has an animation pending.

Returns
true, if this node (or at least one of its children) has an animation pending. Used to determine if the main sequence is actually empty, or contains effects

Implements slideshow::internal::AnimationNode.

Definition at line 142 of file animationaudionode.cxx.

◆ resetPlayer()

void slideshow::internal::AnimationAudioNode::resetPlayer ( ) const
private

Definition at line 171 of file animationaudionode.cxx.

References mpPlayer.

Referenced by deactivate_st(), and dispose().

Member Data Documentation

◆ maSoundURL

OUString slideshow::internal::AnimationAudioNode::maSoundURL
private

Definition at line 56 of file animationaudionode.hxx.

Referenced by AnimationAudioNode(), and createPlayer().

◆ mpPlayer

SoundPlayerSharedPtr slideshow::internal::AnimationAudioNode::mpPlayer
mutableprivate

◆ mxAudioNode

css::uno::Reference<css::animations::XAudio > slideshow::internal::AnimationAudioNode::mxAudioNode
private

Definition at line 55 of file animationaudionode.hxx.

Referenced by AnimationAudioNode(), and dispose().


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