# Channel

class `Channel` : public HPS::Sprocket

  The Channel class describes part of an Animation through the use of a Sampler. A Channel is associated to an Animation, and as such needs to be created through one of the Animation::AddChannel functions. Each Channel is specific to a type of animation and targets a specific object in the scene graph.

  Public Types

  enum class `ChannelType`

    The type of Animation described by this Channel.

    Values:

    enumerator `Translation`

      The target of this Channel will be translated in space.

    enumerator `Rotation`

      The target of this Channel will be rotated.

    enumerator `Scale`

      The target of this Channel will be scaled.

    enumerator `Color`

      The color of the target of this Channel will be changed.

    enumerator `Opacity`

      The opacity of the target of this Channel will be changed.

    enumerator `CameraPosition`

      The position of the camera present at the target segment will be changed.

    enumerator `CameraTarget`

      The target of the camera present at the target segment will be changed.

    enumerator `CameraUp`

      The up vector of the camera present at the target segment will be changed.

  Public Functions

  void `Assign`(Channel const &in_that)

    Share the underlying smart-pointer of the Channel source.

    Parameters: | in_that – The Channel source of the assignment.
    Returns: | A reference to this Channel.

  `Channel`()
  `Channel`(Channel const &in_that)
  bool `Equals`(Channel const &in_that) const

    Check if the source Channel points to the same underlying impl as this Channel.

    Parameters: | in_that – The source Channel to compare to this Animation.
    Returns: | true if the objects reference the same impl, false otherwise.

  ChannelType `GetChannelType`() const

    Returns the type of Animation which will be performed by this Channel

    Returns: | The Channel Type

  UTF8 &`GetName`() const

    Returns the name given to this Channel when it was added to an Animation

    Returns: | The name of this Channel

  Sampler &`GetSampler`()

    Returns the Sampler associated with this Channel

    Returns: | The Sampler associated with this Channel

  Sampler const &`GetSampler`() const

    Returns the Sampler associated with this Channel

    Returns: | The Sampler associated with this Channel

  KeyPath const &`GetTarget`() const

    Returns the target of this Channel. If this Channel is being used to animate a camera property this key path will be empty.

    Returns: | The SegmentKey targeted by this Channel

  inline virtual HPS::Type `ObjectType`() const

    This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

    Returns: | The declared type of the object in question, which may differ from the true, underlying type.

  bool `operator!=`(Channel const &in_that) const

    Check if the source Channel points to a different impl than this Channel.

    Parameters: | in_that – The source Channel to compare to this Animation.
    Returns: | true if the objects reference different impls, false otherwise.

  Channel &`operator=`(Channel &&in_that)
  Channel &`operator=`(Channel const &in_that)
  bool `operator==`(Channel const &in_that) const

    Check if the source Channel points to the same underlying impl as this Channel.

    Parameters: | in_that – The source Channel to compare to this Channel.
    Returns: | true if the objects reference the same impl, false otherwise.

  void `SetSampler`(Sampler const &sampler)

    Sets the Sampler associated with this Channel

    Parameters: | in_that – The source Sampler to use.

  `~Channel`()

  Public Static Attributes

  static const HPS::Type `staticType` = HPS::Type::Channel

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your multilingual generative AI assistant for documentation. Ask me anything about HOOPS Visualize Desktop in your own language, or choose a sample question below to start a conversation:

What is HOOPS Visualize Desktop?
What are the latest release notes for HOOPS Visualize Desktop?
How do I start evaluating HOOPS Visualize Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...