mirror of
https://github.com/panda3d/panda3d.git
synced 2026-03-18 10:00:59 -05:00
add EventStorePandaNode
This commit is contained in:
@@ -23,7 +23,7 @@ TypeHandle EventStoreValue<Type>::_type_handle;
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Default constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores nothing: the
|
||||
// "empty" parameter.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -33,7 +33,7 @@ EventParameter() {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Pointer constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores a pointer to
|
||||
// any kind of TypedWritableReferenceCount object. This
|
||||
// is the most general constructor.
|
||||
@@ -49,7 +49,7 @@ EventParameter(const TypedWritableReferenceCount *ptr) : _ptr((TypedWritableRefe
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Pointer constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores a pointer to
|
||||
// a TypedReferenceCount object. Note that a
|
||||
// TypedReferenceCount is not the same kind of pointer
|
||||
@@ -68,7 +68,7 @@ EventParameter(const TypedReferenceCount *ptr) : _ptr(new EventStoreTypedRefCoun
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Integer constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores an integer
|
||||
// value.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -78,7 +78,7 @@ EventParameter(int value) : _ptr(new EventStoreInt(value)) { }
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Double constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores a
|
||||
// floating-point value.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -88,7 +88,7 @@ EventParameter(double value) : _ptr(new EventStoreDouble(value)) { }
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::String constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores a string value.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventParameter::
|
||||
@@ -96,7 +96,7 @@ EventParameter(const string &value) : _ptr(new EventStoreString(value)) { }
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Wstring constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Defines an EventParameter that stores a wstring value.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventParameter::
|
||||
@@ -105,7 +105,7 @@ EventParameter(const wstring &value) : _ptr(new EventStoreWstring(value)) { }
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Copy constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventParameter::
|
||||
@@ -114,7 +114,7 @@ EventParameter(const EventParameter &other) : _ptr(other._ptr) { }
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Copy assignment operator
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventParameter &EventParameter::
|
||||
@@ -125,7 +125,7 @@ operator = (const EventParameter &other) {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::Destructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventParameter::
|
||||
@@ -134,7 +134,7 @@ INLINE EventParameter::
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_empty
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter is the empty
|
||||
// parameter, storing nothing, or false otherwise.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -145,7 +145,7 @@ is_empty() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_int
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter stores an integer
|
||||
// value, false otherwise.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -159,7 +159,7 @@ is_int() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_int_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the EventParameter. It
|
||||
// is only valid to call this if is_int() has already
|
||||
// returned true.
|
||||
@@ -175,7 +175,7 @@ get_int_value() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_double
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter stores a double
|
||||
// floating-point value, false otherwise.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -189,7 +189,7 @@ is_double() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_double_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the EventParameter. It
|
||||
// is only valid to call this if is_double() has already
|
||||
// returned true.
|
||||
@@ -202,7 +202,7 @@ get_double_value() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_string
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter stores a string
|
||||
// value, false otherwise.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -216,7 +216,7 @@ is_string() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_string_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the EventParameter. It
|
||||
// is only valid to call this if is_string() has already
|
||||
// returned true.
|
||||
@@ -229,7 +229,7 @@ get_string_value() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_wstring
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter stores a wstring
|
||||
// value, false otherwise.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@@ -243,7 +243,7 @@ is_wstring() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_wstring_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the EventParameter. It
|
||||
// is only valid to call this if is_wstring() has already
|
||||
// returned true.
|
||||
@@ -256,7 +256,7 @@ get_wstring_value() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::is_typed_ref_count
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Returns true if the EventParameter stores a
|
||||
// TypedReferenceCount pointer, false otherwise. Note
|
||||
// that a TypedReferenceCount is not exactly the same
|
||||
@@ -273,7 +273,7 @@ is_typed_ref_count() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_typed_ref_count_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the EventParameter. It
|
||||
// is only valid to call this if is_typed_ref_count()
|
||||
// has already returned true.
|
||||
@@ -286,7 +286,7 @@ get_typed_ref_count_value() const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::get_ptr
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves a pointer to the actual value stored in the
|
||||
// parameter. The TypeHandle of this pointer may be
|
||||
// examined to determine the actual type of parameter it
|
||||
@@ -316,7 +316,7 @@ EventStoreValueBase() {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreTypedRefCount::Constructor
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventStoreTypedRefCount::
|
||||
@@ -327,7 +327,7 @@ EventStoreTypedRefCount(const TypedReferenceCount *value) :
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreTypedRefCount::set_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Changes the value stored in the parameter. It is
|
||||
// dangerous to do this for a parameter already added to
|
||||
// an event, since the parameters may be shared.
|
||||
@@ -340,7 +340,7 @@ set_value(const TypedReferenceCount *value) {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreTypedRefCount::get_value
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the parameter.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE TypedReferenceCount *EventStoreTypedRefCount::
|
||||
|
||||
@@ -29,7 +29,7 @@ TypeHandle EventStoreTypedRefCount::_type_handle;
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventParameter::output
|
||||
// Access: Public
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void EventParameter::
|
||||
@@ -49,7 +49,7 @@ output(ostream &out) const {
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreValueBase::Destructor
|
||||
// Access: Public, Virtual
|
||||
// Access: Published, Virtual
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
EventStoreValueBase::
|
||||
@@ -58,7 +58,7 @@ EventStoreValueBase::
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreTypedRefCount::Destructor
|
||||
// Access: Public, Virtual
|
||||
// Access: Published, Virtual
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
EventStoreTypedRefCount::
|
||||
@@ -67,7 +67,7 @@ EventStoreTypedRefCount::
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStoreTypedRefCount::output
|
||||
// Access: Public, Virtual
|
||||
// Access: Published, Virtual
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void EventStoreTypedRefCount::
|
||||
|
||||
@@ -90,6 +90,8 @@ INLINE ostream &operator << (ostream &out, const EventParameter ¶m);
|
||||
class EXPCL_PANDA EventStoreValueBase : public TypedWritableReferenceCount {
|
||||
public:
|
||||
INLINE EventStoreValueBase();
|
||||
|
||||
PUBLISHED:
|
||||
virtual ~EventStoreValueBase();
|
||||
virtual void output(ostream &out) const=0;
|
||||
|
||||
@@ -118,7 +120,7 @@ private:
|
||||
// TypedWritableReferenceCount.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
class EXPCL_PANDA EventStoreTypedRefCount : public EventStoreValueBase {
|
||||
public:
|
||||
PUBLISHED:
|
||||
INLINE EventStoreTypedRefCount(const TypedReferenceCount *value);
|
||||
virtual ~EventStoreTypedRefCount();
|
||||
|
||||
@@ -127,6 +129,7 @@ public:
|
||||
|
||||
virtual void output(ostream &out) const;
|
||||
|
||||
public:
|
||||
PT(TypedReferenceCount) _value;
|
||||
|
||||
public:
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
depthWriteAttrib.I depthWriteAttrib.h \
|
||||
directionalLight.I directionalLight.h \
|
||||
drawMaskAttrib.I drawMaskAttrib.h \
|
||||
eventStorePandaNode.I eventStorePandaNode.h \
|
||||
fadeLodNode.I fadeLodNode.h fadeLodNodeData.h \
|
||||
findApproxLevelEntry.I findApproxLevelEntry.h \
|
||||
findApproxPath.I findApproxPath.h \
|
||||
@@ -150,6 +151,7 @@
|
||||
depthWriteAttrib.cxx \
|
||||
directionalLight.cxx \
|
||||
drawMaskAttrib.cxx \
|
||||
eventStorePandaNode.cxx \
|
||||
fadeLodNode.cxx fadeLodNodeData.cxx \
|
||||
findApproxLevelEntry.cxx \
|
||||
findApproxPath.cxx \
|
||||
@@ -252,6 +254,7 @@
|
||||
depthWriteAttrib.I depthWriteAttrib.h \
|
||||
directionalLight.I directionalLight.h \
|
||||
drawMaskAttrib.I drawMaskAttrib.h \
|
||||
eventStorePandaNode.I eventStorePandaNode.h \
|
||||
fadeLodNode.I fadeLodNode.h fadeLodNodeData.h \
|
||||
fog.I fog.h \
|
||||
fogAttrib.I fogAttrib.h \
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "depthWriteAttrib.h"
|
||||
#include "directionalLight.h"
|
||||
#include "drawMaskAttrib.h"
|
||||
#include "eventStorePandaNode.h"
|
||||
#include "fadeLodNode.h"
|
||||
#include "fadeLodNodeData.h"
|
||||
#include "fog.h"
|
||||
@@ -313,6 +314,7 @@ init_libpgraph() {
|
||||
DepthWriteAttrib::init_type();
|
||||
DirectionalLight::init_type();
|
||||
DrawMaskAttrib::init_type();
|
||||
EventStorePandaNode::init_type();
|
||||
FadeLODNode::init_type();
|
||||
FadeLODNodeData::init_type();
|
||||
Fog::init_type();
|
||||
|
||||
52
panda/src/pgraph/eventStorePandaNode.I
Normal file
52
panda/src/pgraph/eventStorePandaNode.I
Normal file
@@ -0,0 +1,52 @@
|
||||
// Filename: eventStorePandaNode.I
|
||||
// Created by: drose (13Sep06)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// PANDA 3D SOFTWARE
|
||||
// Copyright (c) 2001 - 2004, Disney Enterprises, Inc. All rights reserved
|
||||
//
|
||||
// All use of this software is subject to the terms of the Panda 3d
|
||||
// Software license. You should have received a copy of this license
|
||||
// along with this source code; you will also find a current copy of
|
||||
// the license at http://etc.cmu.edu/panda3d/docs/license/ .
|
||||
//
|
||||
// To contact the maintainers of this program write to
|
||||
// panda3d-general@lists.sourceforge.net .
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStorePandaNode::Constructor
|
||||
// Access: Published
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE EventStorePandaNode::
|
||||
EventStorePandaNode(const PandaNode *value) :
|
||||
_value((PandaNode *)value)
|
||||
{
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStorePandaNode::set_value
|
||||
// Access: Published
|
||||
// Description: Changes the value stored in the parameter. It is
|
||||
// dangerous to do this for a parameter already added to
|
||||
// an event, since the parameters may be shared.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE void EventStorePandaNode::
|
||||
set_value(const PandaNode *value) {
|
||||
_value = (PandaNode *)value;
|
||||
}
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStorePandaNode::get_value
|
||||
// Access: Published
|
||||
// Description: Retrieves the value stored in the parameter.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
INLINE PandaNode *EventStorePandaNode::
|
||||
get_value() const {
|
||||
return _value;
|
||||
}
|
||||
45
panda/src/pgraph/eventStorePandaNode.cxx
Normal file
45
panda/src/pgraph/eventStorePandaNode.cxx
Normal file
@@ -0,0 +1,45 @@
|
||||
// Filename: eventStorePandaNode.cxx
|
||||
// Created by: drose (13Sep06)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// PANDA 3D SOFTWARE
|
||||
// Copyright (c) 2001 - 2004, Disney Enterprises, Inc. All rights reserved
|
||||
//
|
||||
// All use of this software is subject to the terms of the Panda 3d
|
||||
// Software license. You should have received a copy of this license
|
||||
// along with this source code; you will also find a current copy of
|
||||
// the license at http://etc.cmu.edu/panda3d/docs/license/ .
|
||||
//
|
||||
// To contact the maintainers of this program write to
|
||||
// panda3d-general@lists.sourceforge.net .
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "eventStorePandaNode.h"
|
||||
|
||||
TypeHandle EventStorePandaNode::_type_handle;
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStorePandaNode::Destructor
|
||||
// Access: Published, Virtual
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
EventStorePandaNode::
|
||||
~EventStorePandaNode() {
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: EventStorePandaNode::output
|
||||
// Access: Published, Virtual
|
||||
// Description:
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void EventStorePandaNode::
|
||||
output(ostream &out) const {
|
||||
if (_value == (PandaNode *)NULL) {
|
||||
out << "(empty)";
|
||||
|
||||
} else {
|
||||
out << *_value;
|
||||
}
|
||||
}
|
||||
64
panda/src/pgraph/eventStorePandaNode.h
Normal file
64
panda/src/pgraph/eventStorePandaNode.h
Normal file
@@ -0,0 +1,64 @@
|
||||
// Filename: eventStorePandaNode.h
|
||||
// Created by: drose (13Sep06)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// PANDA 3D SOFTWARE
|
||||
// Copyright (c) 2001 - 2004, Disney Enterprises, Inc. All rights reserved
|
||||
//
|
||||
// All use of this software is subject to the terms of the Panda 3d
|
||||
// Software license. You should have received a copy of this license
|
||||
// along with this source code; you will also find a current copy of
|
||||
// the license at http://etc.cmu.edu/panda3d/docs/license/ .
|
||||
//
|
||||
// To contact the maintainers of this program write to
|
||||
// panda3d-general@lists.sourceforge.net .
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef EVENTSTOREPANDANODE_H
|
||||
#define EVENTSTOREPANDANODE_H
|
||||
|
||||
#include "pandabase.h"
|
||||
#include "eventParameter.h"
|
||||
#include "pandaNode.h"
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Class : EventStorePandaNode
|
||||
// Description : A class object for storing specifically objects of
|
||||
// type PandaNode.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
class EXPCL_PANDA EventStorePandaNode : public EventStoreValueBase {
|
||||
PUBLISHED:
|
||||
INLINE EventStorePandaNode(const PandaNode *value);
|
||||
virtual ~EventStorePandaNode();
|
||||
|
||||
INLINE void set_value(const PandaNode *value);
|
||||
INLINE PandaNode *get_value() const;
|
||||
|
||||
virtual void output(ostream &out) const;
|
||||
|
||||
public:
|
||||
PT(PandaNode) _value;
|
||||
|
||||
public:
|
||||
virtual TypeHandle get_type() const {
|
||||
return get_class_type();
|
||||
}
|
||||
virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
|
||||
static TypeHandle get_class_type() {
|
||||
return _type_handle;
|
||||
}
|
||||
static void init_type() {
|
||||
EventStoreValueBase::init_type();
|
||||
register_type(_type_handle, "EventStorePandaNode",
|
||||
EventStoreValueBase::get_class_type());
|
||||
}
|
||||
|
||||
private:
|
||||
static TypeHandle _type_handle;
|
||||
};
|
||||
|
||||
#include "eventStorePandaNode.I"
|
||||
|
||||
#endif
|
||||
@@ -15,6 +15,7 @@
|
||||
#include "alphaTestAttrib.cxx"
|
||||
#include "directionalLight.cxx"
|
||||
#include "drawMaskAttrib.cxx"
|
||||
#include "eventStorePandaNode.cxx"
|
||||
#include "fadeLodNode.cxx"
|
||||
#include "fadeLodNodeData.cxx"
|
||||
#include "findApproxPath.cxx"
|
||||
|
||||
Reference in New Issue
Block a user