| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- /**
- * PANDA 3D SOFTWARE
- * Copyright (c) Carnegie Mellon University. All rights reserved.
- *
- * All use of this software is subject to the terms of the revised BSD
- * license. You should have received a copy of this license along
- * with this source code in a file named "LICENSE."
- *
- * @file cDistributedSmoothNodeBase.I
- * @author drose
- * @date 2004-09-03
- */
- /**
- * Tells the C++ instance definition about the AI or Client repository, used
- * for sending datagrams.
- */
- INLINE void CDistributedSmoothNodeBase::
- set_repository(CConnectionRepository *repository,
- bool is_ai, CHANNEL_TYPE ai_id) {
- _repository = repository;
- _is_ai = is_ai;
- _ai_id = ai_id;
- }
- #ifdef HAVE_PYTHON
- /**
- * Tells the C++ instance definition about the global ClockDelta object.
- */
- INLINE void CDistributedSmoothNodeBase::
- set_clock_delta(PyObject *clock_delta) {
- _clock_delta = clock_delta;
- }
- #endif // HAVE_PYTHON
- /**
- * Returns true if at least some of the bits of compare are set in flags, but
- * no bits outside of compare are set. That is to say, that the only things
- * that are changed are the bits indicated in compare.
- */
- INLINE bool CDistributedSmoothNodeBase::
- only_changed(int flags, int compare) {
- return (flags & compare) != 0 && (flags & ~compare) == 0;
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmStop() {
- // cout << "d_setSmStop" << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmStop");
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmH(PN_stdfloat h) {
- // cout << "d_setSmH: " << h << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmH");
- packer.pack_double(h);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmZ(PN_stdfloat z) {
- // cout << "d_setSmZ: " << z << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmZ");
- packer.pack_double(z);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmXY(PN_stdfloat x, PN_stdfloat y) {
- // cout << "d_setSmXY: " << x << ", " << y << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmXY");
- packer.pack_double(x);
- packer.pack_double(y);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmXZ(PN_stdfloat x, PN_stdfloat z) {
- // cout << "d_setSmXZ: " << x << ", " << z << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmXZ");
- packer.pack_double(x);
- packer.pack_double(z);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmPos(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z) {
- // cout << "d_setSmXYZ: " << x << ", " << y << ", " << z << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmPos");
- packer.pack_double(x);
- packer.pack_double(y);
- packer.pack_double(z);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmHpr(PN_stdfloat h, PN_stdfloat p, PN_stdfloat r) {
- // cout << "d_setSmHPR: " << h << ", " << p << ", " << r << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmHpr");
- packer.pack_double(h);
- packer.pack_double(p);
- packer.pack_double(r);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmXYH(PN_stdfloat x, PN_stdfloat y, PN_stdfloat h) {
- // cout << "d_setSmXYH: " << x << ", " << y << ", " << h << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmXYH");
- packer.pack_double(x);
- packer.pack_double(y);
- packer.pack_double(h);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmXYZH(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z, PN_stdfloat h) {
- // cout << "d_setSmXYZH: " << x << ", " << y << ", " << z << ", " << h <<
- // endl;
- DCPacker packer;
- begin_send_update(packer, "setSmXYZH");
- packer.pack_double(x);
- packer.pack_double(y);
- packer.pack_double(z);
- packer.pack_double(h);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmPosHpr(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z, PN_stdfloat h, PN_stdfloat p, PN_stdfloat r) {
- // cout << "d_setSmPosHpr: " << x << ", " << y << ", " << z << ", " << h <<
- // ", " << p << ", " << r << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmPosHpr");
- packer.pack_double(x);
- packer.pack_double(y);
- packer.pack_double(z);
- packer.pack_double(h);
- packer.pack_double(p);
- packer.pack_double(r);
- finish_send_update(packer);
- }
- /**
- *
- */
- INLINE void CDistributedSmoothNodeBase::
- d_setSmPosHprL(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z, PN_stdfloat h, PN_stdfloat p, PN_stdfloat r, uint64_t l) {
- // cout << "d_setSmPosHprL: " << x << ", " << y << ", " << z << ", " << h <<
- // ", " << p << ", " << r << l << endl;
- DCPacker packer;
- begin_send_update(packer, "setSmPosHprL");
- packer.pack_uint64(_currL[0]);
- packer.pack_double(x);
- packer.pack_double(y);
- packer.pack_double(z);
- packer.pack_double(h);
- packer.pack_double(p);
- packer.pack_double(r);
- finish_send_update(packer);
- }
|