export template functions properly from DLL
This commit is contained in:
parent
6c9d425806
commit
f5b2498898
|
|
@ -43,7 +43,7 @@
|
|||
pt_NodeRelation.h setTransitionHelpers.T \
|
||||
setTransitionHelpers.h transitionDirection.h \
|
||||
traverserVisitor.T traverserVisitor.h vector_PT_Node.h \
|
||||
vector_PT_NodeRelation.h vector_NodeRelation_star.h wrt.I \
|
||||
vector_PT_NodeRelation.h vector_NodeRelation_star.h wrt.T \
|
||||
wrt.h
|
||||
|
||||
#define INCLUDED_SOURCES \
|
||||
|
|
@ -97,7 +97,7 @@
|
|||
setTransitionHelpers.T setTransitionHelpers.h \
|
||||
transitionDirection.h traverserVisitor.T traverserVisitor.h \
|
||||
vector_PT_Node.h vector_PT_NodeRelation.h vector_NodeRelation_star.h \
|
||||
wrt.I wrt.h
|
||||
wrt.T wrt.h
|
||||
|
||||
#define IGATESCAN all
|
||||
|
||||
|
|
|
|||
|
|
@ -63,36 +63,6 @@ end() const {
|
|||
return _transitions.end();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// Function: get_transition_into
|
||||
// Description: This external template function is handy for
|
||||
// extracting a transition of a particular type from the
|
||||
// set. If the transition exists, it is automatically
|
||||
// downcasted to the correct type and stored in the
|
||||
// pointer given in the first parameter, and the return
|
||||
// value is true. If the transition does not exist, the
|
||||
// pointer is filled with NULL and the return value is
|
||||
// false.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
template<class Transition>
|
||||
INLINE_GRAPH bool
|
||||
get_transition_into(Transition *&ptr, const NodeTransitions &trans,
|
||||
TypeHandle transition_type) {
|
||||
NodeTransition *nt = trans.get_transition(transition_type);
|
||||
if (nt == (NodeTransition *)NULL) {
|
||||
ptr = (Transition *)NULL;
|
||||
return false;
|
||||
}
|
||||
DCAST_INTO_R(ptr, nt, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
template<class Transition>
|
||||
INLINE_GRAPH bool
|
||||
get_transition_into(Transition *&ptr, const NodeTransitions &trans) {
|
||||
return get_transition_into(ptr, trans, Transition::get_class_type());
|
||||
}
|
||||
|
||||
INLINE_GRAPH ostream &operator << (ostream &out, const NodeTransitions &nts) {
|
||||
nts.output(out);
|
||||
return out;
|
||||
|
|
|
|||
|
|
@ -88,8 +88,19 @@ private:
|
|||
|
||||
INLINE_GRAPH ostream &operator << (ostream &out, const NodeTransitions &nts);
|
||||
|
||||
template<class Transition>
|
||||
INLINE_GRAPH bool
|
||||
get_transition_into(Transition *&ptr, const NodeTransitions &trans,
|
||||
TypeHandle transition_type);
|
||||
|
||||
template<class Transition>
|
||||
INLINE_GRAPH bool
|
||||
get_transition_into(Transition *&ptr, const NodeTransitions &trans);
|
||||
|
||||
#ifndef DONT_INLINE_GRAPH
|
||||
#include "nodeTransitions.I"
|
||||
#endif
|
||||
|
||||
#include "nodeTransitions.T"
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Filename: wrt.I
|
||||
// Filename: wrt.T
|
||||
// Created by: drose (26Oct98)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -146,8 +146,6 @@ wrt_subtree(NodeRelation *arc, Node *to, UpdateSeq as_of, UpdateSeq now,
|
|||
extern EXPCL_PANDA PStatCollector _wrt_pcollector;
|
||||
extern EXPCL_PANDA PStatCollector _wrt_subtree_pcollector;
|
||||
|
||||
#ifndef DONT_INLINE_GRAPH
|
||||
#include "wrt.I"
|
||||
#endif
|
||||
#include "wrt.T"
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue