Panda3D

Public Member Functions | Static Public Member Functions | Friends | List of all members
CharacterSlider Class Reference

This is a morph slider within the character. More...

`#include "characterSlider.h"`

Inheritance diagram for CharacterSlider:

## Public Member Functions
| CharacterSlider (PartGroup *parent, const std::string &name)
| CharacterSlider (PartGroup *parent, const std::string &name, const PN_stdfloat &default_value)
virtual TypeHandle | force_init_type ()
virtual TypeHandle | get_type () const
virtual PartGroup * | make_copy () const
| Allocates and returns a new copy of the node. More...
virtual bool | update_internals (PartBundle *root, PartGroup *parent, bool self_changed, bool parent_changed, Thread *current_thread)
| This is called by do_update() whenever the part or some ancestor has changed values. More...
Public Member Functions inherited from MovingPartScalar
| MovingPartScalar (PartGroup *parent, const std::string &name, const PN_stdfloat &default_value=0)
virtual bool | apply_control (PandaNode *node)
| Specifies a node to influence this particular joint so that it will always hold the node's transform. More...
virtual bool | apply_freeze_scalar (PN_stdfloat value)
| Freezes this particular joint so that it will always hold the specified transform. More...
virtual void | get_blend_value (const PartBundle *root)
| Attempts to blend the various scalar values indicated, and sets the _value member to the resulting scalar. More...
Public Member Functions inherited from MovingPart< ACScalarSwitchType >
| MovingPart (PartGroup *parent, const std::string &name, const ValueType &default_value)
ValueType | get_default_value () const
ValueType | get_value () const
virtual TypeHandle | get_value_type () const
| Returns the TypeHandle associated with the ValueType we are concerned with. More...
virtual AnimChannelBase * | make_default_channel () const
| Creates and returns a new AnimChannel that is not part of any hierarchy, but that returns the default value associated with this part. More...
virtual void | output_value (std::ostream &out) const
| Outputs a very brief description of the channel's current value. More...
virtual void | write_datagram (BamWriter *manager, Datagram &me)
| Function to write the important information in the particular object to a Datagram. More...
Public Member Functions inherited from MovingPartBase
| MovingPartBase (PartGroup *parent, const std::string &name)
virtual bool | clear_forced_channel ()
| Undoes the effect of a previous call to apply_freeze() or apply_control(). More...
virtual int | complete_pointers (TypedWritable **plist, BamReader *manager)
| Receives an array of pointers, one for each time manager->read_pointer() was called in fillin(). More...
virtual bool | do_update (PartBundle *root, const CycleData *root_cdata, PartGroup *parent, bool parent_changed, bool anim_changed, Thread *current_thread)
| Recursively update this particular part and all of its descendents for the current frame. More...
AnimChannelBase * | get_bound (int n) const
| Returns the nth bound channel on this PartGroup. More...
virtual AnimChannelBase * | get_forced_channel () const
| Returns the AnimChannelBase that has been forced to this joint by a previous call to apply_freeze() or apply_control(), or NULL if no such channel has been applied. More...
int | get_max_bound () const
| Returns the number of channels that might be bound to this PartGroup. More...
virtual void | write (std::ostream &out, int indent_level) const
| Writes a brief description of the channel and all of its descendants. More...
virtual void | write_with_value (std::ostream &out, int indent_level) const
| Writes a brief description of the channel and all of its descendants, along with their values. More...
Public Member Functions inherited from PartGroup
| PartGroup (PartGroup *parent, const std::string &name)
| Creates the PartGroup, and adds it to the indicated parent. More...
bool | apply_freeze (const TransformState *transform)
| Freezes this particular joint so that it will always hold the specified transform. More...
virtual bool | apply_freeze_matrix (const LVecBase3 &pos, const LVecBase3 &hpr, const LVecBase3 &scale)
| Freezes this particular joint so that it will always hold the specified transform. More...
bool | check_hierarchy (const AnimGroup *anim, const PartGroup *parent, int hierarchy_match_flags=0) const
| Walks the part hierarchy in tandem with the indicated anim hierarchy, and returns true if the hierarchies match, false otherwise. More...
PartGroup * | copy_subgraph () const
| Allocates and returns a new copy of this node and of all of its children. More...
virtual void | do_xform (const LMatrix4 &mat, const LMatrix4 &inv_mat)
| Called by PartBundle::xform(), this indicates the indicated transform is being applied to the root joint. More...
PartGroup * | find_child (const std::string &name) const
| Returns the first descendant found with the indicated name, or NULL if no such descendant exists. More...
PartGroup * | get_child (int n) const
PartGroup * | get_child_named (const std::string &name) const
| Returns the first child found with the indicated name, or NULL if no such child exists. More...
int | get_num_children () const
virtual bool | is_character_joint () const
| Returns true if this part is a CharacterJoint, false otherwise. More...
void | sort_descendants ()
| Sorts the children nodes at each level of the hierarchy into alphabetical order. More...
Public Member Functions inherited from TypedWritableReferenceCount
| TypedWritableReferenceCount (const TypedWritableReferenceCount &copy)
virtual ReferenceCount * | as_reference_count ()
| Returns the pointer cast to a ReferenceCount pointer, if it is in fact of that type. More...
void | operator= (const TypedWritableReferenceCount &copy)
Public Member Functions inherited from TypedWritable
| TypedWritable (const TypedWritable &copy)
vector_uchar | encode_to_bam_stream () const
| Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a bytes object. More...
bool | encode_to_bam_stream (vector_uchar &data, BamWriter *writer=nullptr) const
| Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string. More...
virtual void | finalize (BamReader *manager)
| Called by the BamReader to perform any final actions needed for setting up the object after all objects have been read and all pointers have been completed. More...
UpdateSeq | get_bam_modified () const
| Returns the current bam_modified counter. More...
void | mark_bam_modified ()
| Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams. More...
void | operator= (const TypedWritable &copy)
virtual bool | require_fully_complete () const
| Some objects require all of their nested pointers to have been completed before the objects themselves can be completed. More...
virtual void | update_bam_nested (BamWriter *manager)
| Called by the BamWriter when this object has not itself been modified recently, but it should check its nested objects for updates. More...
Public Member Functions inherited from TypedObject
| TypedObject (const TypedObject &copy)=default
TypedObject * | as_typed_object ()
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
const TypedObject * | as_typed_object () const
| Returns the object, upcast (if necessary) to a TypedObject pointer. More...
int | get_best_parent_from_Set (const std::set< int > &) const
int | get_type_index () const
| Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
bool | is_exact_type (TypeHandle handle) const
| Returns true if the current object is the indicated type exactly. More...
bool | is_of_type (TypeHandle handle) const
| Returns true if the current object is or derives from the indicated type. More...
TypedObject & | operator= (const TypedObject &copy)=default
Public Member Functions inherited from MemoryBase
void | operator delete (void *, void *)
void | operator delete (void *ptr)
void | operator delete[] (void *, void *)
void | operator delete[] (void *ptr)
void * | operator new (size_t size)
void * | operator new (size_t size, void *ptr)
void * | operator new[] (size_t size)
void * | operator new[] (size_t size, void *ptr)
Public Member Functions inherited from ReferenceCount
int | get_ref_count () const
WeakReferenceList * | get_weak_list () const
| Returns the WeakReferenceList associated with this ReferenceCount object. More...
bool | has_weak_list () const
| Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More...
void | local_object ()
| This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More...
void | ref () const
| Explicitly increments the reference count. More...
bool | ref_if_nonzero () const
| Atomically increases the reference count of this object if it is not zero. More...
bool | test_ref_count_integrity () const
| Does some easy checks to make sure that the reference count isn't completely bogus. More...
bool | test_ref_count_nonzero () const
| Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
virtual bool | unref () const
| Explicitly decrements the reference count. More...
bool | unref_if_one () const
| Atomically decreases the reference count of this object if it is one. More...
WeakReferenceList * | weak_ref ()
| Adds the indicated PointerToVoid as a weak reference to this object. More...
void | weak_unref ()
| Removes the indicated PointerToVoid as a weak reference to this object. More...
Public Member Functions inherited from Namable
| Namable (const std::string &initial_name="")
void | clear_name ()
| Resets the Namable's name to empty. More...
const std::string & | get_name () const
bool | has_name () const
| Returns true if the Namable has a nonempty name set, false if the name is empty. More...
void | output (std::ostream &out) const
| Outputs the Namable. More...
void | set_name (const std::string &name)

## Static Public Member Functions
static TypeHandle | get_class_type ()
static void | init_type ()
static TypedWritable * | make_CharacterSlider (const FactoryParams &params)
| Factory method to generate a CharacterSlider object. More...
static void | register_with_read_factory ()
| Factory method to generate a CharacterSlider object. More...
Static Public Member Functions inherited from MovingPartScalar
static TypeHandle | get_class_type ()
static void | init_type ()
static TypedWritable * | make_MovingPartScalar (const FactoryParams &params)
| Factory method to generate a MovingPartScalar object. More...
static void | register_with_read_factory ()
| Factory method to generate a MovingPartScalar object. More...
Static Public Member Functions inherited from MovingPart< ACScalarSwitchType >
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from MovingPartBase
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from PartGroup
static TypeHandle | get_class_type ()
static void | init_type ()
static TypedWritable * | make_PartGroup (const FactoryParams &params)
| Factory method to generate a PartGroup object. More...
static void | register_with_read_factory ()
| Factory method to generate a PartGroup object. More...
Static Public Member Functions inherited from TypedWritableReferenceCount
static TypeHandle | get_class_type ()
static void | init_type ()
static | PT (TypedWritableReferenceCount) decode_from_bam_stream(vector_uchar data
Static Public Member Functions inherited from TypedWritable
static bool | decode_raw_from_bam_stream (TypedWritable *&ptr, ReferenceCount *&ref_ptr, vector_uchar data, BamReader *reader=nullptr)
| Reads the bytes created by a previous call to encode_to_bam_stream(), and extracts the single object on those bytes. More...
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from TypedObject
static TypeHandle | get_class_type ()
static void | init_type ()
| This function is declared non-inline to work around a compiler bug in g++ 2.96. More...
Static Public Member Functions inherited from ReferenceCount
static TypeHandle | get_class_type ()
static void | init_type ()
Static Public Member Functions inherited from Namable
static TypeHandle | get_class_type ()
static void | init_type ()

## Friends
class | CharacterVertexSlider

## Additional Inherited Members
Public Types inherited from MovingPart< ACScalarSwitchType >
typedef AnimChannel< ACScalarSwitchType > | ChannelType
typedef SwitchType::ValueType | ValueType
Public Types inherited from PartGroup
enum | HierarchyMatchFlags { HMF_ok_part_extra = 0x01 , HMF_ok_anim_extra = 0x02 , HMF_ok_wrong_root_name = 0x04 }
Public Attributes inherited from MovingPart< ACScalarSwitchType >
ValueType | _default_value
ValueType | _value
Public Attributes inherited from PartGroup
| get_child
| Returns the nth child of the group. More...
| get_num_children
| Returns the number of child nodes of the group. More...
Public Attributes inherited from TypedWritableReferenceCount
static BamReader * | reader = nullptr)
Public Attributes inherited from TypedObject
| get_type
Public Attributes inherited from ReferenceCount
| get_ref_count
| Returns the current reference count. More...
Public Attributes inherited from Namable
| get_name
| set_name
Static Public Attributes inherited from TypedWritable
static TypedWritable *const | Null = nullptr

## Detailed Description

This is a morph slider within the character.

It's simply a single floating-point value that animates generally between 0 and 1, that controls the effects of one or more morphs within the character.

Definition at line 28 of file characterSlider.h.

## Member Function Documentation

## ◆ make_CharacterSlider()

TypedWritable * CharacterSlider::make_CharacterSlider | ( | const FactoryParams & | params | ) |
| static

Factory method to generate a CharacterSlider object.

Definition at line 95 of file characterSlider.cxx.

References parse_params().

Referenced by register_with_read_factory().

## ◆ make_copy()

PartGroup * CharacterSlider::make_copy | ( |  | ) | const
| virtual

Allocates and returns a new copy of the node.

Children are not copied, but see copy_subgraph().

Reimplemented from PartGroup.

Definition at line 67 of file characterSlider.cxx.

## ◆ register_with_read_factory()

void CharacterSlider::register_with_read_factory | ( |  | ) |
| static

Factory method to generate a CharacterSlider object.

Definition at line 110 of file characterSlider.cxx.

References BamReader::get_factory(), make_CharacterSlider(), and Factory< Type >::register_factory().

Referenced by init_libchar().

## ◆ update_internals()

bool CharacterSlider::update_internals | ( | PartBundle * | root,
|  | PartGroup * | parent,
|  | bool | self_changed,
|  | bool | parent_changed,
|  | Thread * | current_thread
| ) |  |
| virtual

This is called by do_update() whenever the part or some ancestor has changed values.

It is a hook for derived classes to update whatever cache they may have that depends on these.

The return value is true if the part has changed as a result of the update, or false otherwise.

Reimplemented from MovingPartBase.

Definition at line 80 of file characterSlider.cxx.

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

- panda/src/char/characterSlider.h
- panda/src/char/characterSlider.cxx