diff --git a/panda/src/chan/Sources.pp b/panda/src/chan/Sources.pp index f22a716031..e9df9468b9 100644 --- a/panda/src/chan/Sources.pp +++ b/panda/src/chan/Sources.pp @@ -38,6 +38,8 @@ movingPartScalar.I movingPartScalar.h partBundle.I partBundle.h \ partBundleNode.I partBundleNode.h partGroup.I partGroup.h \ vector_PartGroupStar.h + + #define PRECOMPILED_HEADER chan_headers.h #define IGATESCAN all diff --git a/panda/src/chan/animBundle.cxx b/panda/src/chan/animBundle.cxx index abb73caba3..ef73b10eb4 100644 --- a/panda/src/chan/animBundle.cxx +++ b/panda/src/chan/animBundle.cxx @@ -16,13 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animBundle.h" - -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle AnimBundle::_type_handle; diff --git a/panda/src/chan/animBundleNode.cxx b/panda/src/chan/animBundleNode.cxx index 9afa26087e..4ea6e6341c 100644 --- a/panda/src/chan/animBundleNode.cxx +++ b/panda/src/chan/animBundleNode.cxx @@ -16,11 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animBundleNode.h" -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle AnimBundleNode::_type_handle; diff --git a/panda/src/chan/animChannel.cxx b/panda/src/chan/animChannel.cxx index c5ca40ee90..147a98071b 100644 --- a/panda/src/chan/animChannel.cxx +++ b/panda/src/chan/animChannel.cxx @@ -16,9 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animChannel.h" - -#include +#include "chan_headers.h" +#pragma hdrstop // Tell GCC that we'll take care of the instantiation explicitly here. #ifdef __GNUC__ diff --git a/panda/src/chan/animChannelBase.cxx b/panda/src/chan/animChannelBase.cxx index 7dc71f917f..20214be841 100644 --- a/panda/src/chan/animChannelBase.cxx +++ b/panda/src/chan/animChannelBase.cxx @@ -16,11 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animChannelBase.h" -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle AnimChannelBase::_type_handle; diff --git a/panda/src/chan/animChannelMatrixXfmTable.cxx b/panda/src/chan/animChannelMatrixXfmTable.cxx index b50d64758a..2f3bd3a1f2 100644 --- a/panda/src/chan/animChannelMatrixXfmTable.cxx +++ b/panda/src/chan/animChannelMatrixXfmTable.cxx @@ -16,17 +16,10 @@ // //////////////////////////////////////////////////////////////////// -#include "animChannelMatrixXfmTable.h" -#include "animBundle.h" -#include "config_chan.h" +#include "chan_headers.h" +#pragma hdrstop + -#include -#include -#include -#include -#include -#include -#include TypeHandle AnimChannelMatrixXfmTable::_type_handle; diff --git a/panda/src/chan/animChannelScalarTable.cxx b/panda/src/chan/animChannelScalarTable.cxx index 6c6a60cf4d..c7a27a5715 100644 --- a/panda/src/chan/animChannelScalarTable.cxx +++ b/panda/src/chan/animChannelScalarTable.cxx @@ -16,16 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animChannelScalarTable.h" -#include "animBundle.h" -#include "config_chan.h" - -#include -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle AnimChannelScalarTable::_type_handle; diff --git a/panda/src/chan/animControl.cxx b/panda/src/chan/animControl.cxx index b3c6b4dbfd..dd5a6d2864 100644 --- a/panda/src/chan/animControl.cxx +++ b/panda/src/chan/animControl.cxx @@ -16,14 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "animControl.h" -#include "animChannelBase.h" -#include "partBundle.h" -#include "config_chan.h" - -#include -#include - +#include "chan_headers.h" +#pragma hdrstop TypeHandle AnimControl::_type_handle; diff --git a/panda/src/chan/animControlCollection.cxx b/panda/src/chan/animControlCollection.cxx index 49c4a3f1c5..19860a718b 100644 --- a/panda/src/chan/animControlCollection.cxx +++ b/panda/src/chan/animControlCollection.cxx @@ -16,7 +16,9 @@ // //////////////////////////////////////////////////////////////////// -#include "animControlCollection.h" +#include "chan_headers.h" +#pragma hdrstop + //////////////////////////////////////////////////////////////////// diff --git a/panda/src/chan/animGroup.cxx b/panda/src/chan/animGroup.cxx index df269c1c58..67faaf64cf 100644 --- a/panda/src/chan/animGroup.cxx +++ b/panda/src/chan/animGroup.cxx @@ -16,16 +16,10 @@ // //////////////////////////////////////////////////////////////////// -#include "animGroup.h" -#include "animBundle.h" -#include "config_chan.h" - -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop +// not precompiled because it causes xtra warnings #include TypeHandle AnimGroup::_type_handle; diff --git a/panda/src/chan/auto_bind.cxx b/panda/src/chan/auto_bind.cxx index 095e5595da..ce3c4154c7 100644 --- a/panda/src/chan/auto_bind.cxx +++ b/panda/src/chan/auto_bind.cxx @@ -16,18 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "auto_bind.h" -#include "animBundleNode.h" -#include "partBundleNode.h" -#include "config_chan.h" - -#include -#include -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop typedef set AnimNodes; typedef map Anims; @@ -36,7 +26,6 @@ typedef set PartNodes; typedef map Parts; - //////////////////////////////////////////////////////////////////// // Class : CollectNodes // Description : This is a traverser visitor that locates bundle nodes diff --git a/panda/src/chan/chan_headers.h b/panda/src/chan/chan_headers.h new file mode 100644 index 0000000000..de14e70931 --- /dev/null +++ b/panda/src/chan/chan_headers.h @@ -0,0 +1,58 @@ +// Filename: chan_headers.h +// Created by: georges (30May01) +// +//////////////////////////////////////////////////////////////////// +// +// PANDA 3D SOFTWARE +// Copyright (c) 2001, 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://www.panda3d.org/license.txt . +// +// To contact the maintainers of this program write to +// panda3d@yahoogroups.com . +// +//////////////////////////////////////////////////////////////////// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "animBundle.h" +#include "animBundleNode.h" +#include "animChannel.h" +#include "animChannelBase.h" +#include "animChannelMatrixXfmTable.h" +#include "animChannelScalarTable.h" +#include "animControl.h" +#include "animControlCollection.h" +#include "animGroup.h" +#include "auto_bind.h" +#include "config_chan.h" +#include "movingPartBase.h" +#include "movingPartMatrix.h" +#include "movingPartScalar.h" +#include "partBundle.h" +#include "partBundleNode.h" +#include "partGroup.h" +#include "vector_PartGroupStar.h" + +#pragma hdrstop + diff --git a/panda/src/chan/config_chan.cxx b/panda/src/chan/config_chan.cxx index 8356e9fb83..be5de1baf4 100644 --- a/panda/src/chan/config_chan.cxx +++ b/panda/src/chan/config_chan.cxx @@ -16,23 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "config_chan.h" -#include "animBundle.h" -#include "animBundleNode.h" -#include "animChannelBase.h" -#include "animChannelMatrixXfmTable.h" -#include "animChannelScalarTable.h" -#include "animControl.h" -#include "animGroup.h" -#include "movingPartBase.h" -#include "movingPartMatrix.h" -#include "movingPartScalar.h" -#include "partBundle.h" -#include "partBundleNode.h" -#include "partGroup.h" - -#include -#include +#include "chan_headers.h" +#pragma hdrstop Configure(config_chan); NotifyCategoryDef(chan, ""); diff --git a/panda/src/chan/movingPartBase.cxx b/panda/src/chan/movingPartBase.cxx index d86c7e13e0..45242a617b 100644 --- a/panda/src/chan/movingPartBase.cxx +++ b/panda/src/chan/movingPartBase.cxx @@ -16,11 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "movingPartBase.h" -#include "animControl.h" -#include "animChannelBase.h" - -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle MovingPartBase::_type_handle; diff --git a/panda/src/chan/movingPartMatrix.cxx b/panda/src/chan/movingPartMatrix.cxx index a3df0ad090..a4280b769e 100644 --- a/panda/src/chan/movingPartMatrix.cxx +++ b/panda/src/chan/movingPartMatrix.cxx @@ -16,13 +16,9 @@ // //////////////////////////////////////////////////////////////////// -#include "movingPartMatrix.h" +#include "chan_headers.h" +#pragma hdrstop -#include -#include -#include -#include -#include // Tell GCC that we'll take care of the instantiation explicitly here. #ifdef __GNUC__ diff --git a/panda/src/chan/movingPartScalar.cxx b/panda/src/chan/movingPartScalar.cxx index 9e77377e9e..ff579c6b45 100644 --- a/panda/src/chan/movingPartScalar.cxx +++ b/panda/src/chan/movingPartScalar.cxx @@ -16,11 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "movingPartScalar.h" -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop // Tell GCC that we'll take care of the instantiation explicitly here. #ifdef __GNUC__ diff --git a/panda/src/chan/partBundle.cxx b/panda/src/chan/partBundle.cxx index 6a6e2d4f53..dfbe40f114 100644 --- a/panda/src/chan/partBundle.cxx +++ b/panda/src/chan/partBundle.cxx @@ -16,16 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "partBundle.h" -#include "animBundle.h" -#include "animControl.h" -#include "config_chan.h" - -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle PartBundle::_type_handle; diff --git a/panda/src/chan/partBundleNode.cxx b/panda/src/chan/partBundleNode.cxx index a1e8bdfa8b..1197fad272 100644 --- a/panda/src/chan/partBundleNode.cxx +++ b/panda/src/chan/partBundleNode.cxx @@ -16,11 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "partBundleNode.h" -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop TypeHandle PartBundleNode::_type_handle; diff --git a/panda/src/chan/partGroup.cxx b/panda/src/chan/partGroup.cxx index e1dbea874a..115be1368f 100644 --- a/panda/src/chan/partGroup.cxx +++ b/panda/src/chan/partGroup.cxx @@ -16,16 +16,10 @@ // //////////////////////////////////////////////////////////////////// -#include "partGroup.h" -#include "animGroup.h" -#include "config_chan.h" - -#include -#include -#include -#include -#include +#include "chan_headers.h" +#pragma hdrstop +// not precompiled because it causes xtra warnings #include TypeHandle PartGroup::_type_handle; diff --git a/panda/src/chan/vector_PartGroupStar.cxx b/panda/src/chan/vector_PartGroupStar.cxx index 41ae946837..7747265c01 100644 --- a/panda/src/chan/vector_PartGroupStar.cxx +++ b/panda/src/chan/vector_PartGroupStar.cxx @@ -16,7 +16,8 @@ // //////////////////////////////////////////////////////////////////// -#include "vector_PartGroupStar.h" +#include "chan_headers.h" +#pragma hdrstop #define EXPCL EXPCL_PANDA #define EXPTP EXPTP_PANDA @@ -25,6 +26,7 @@ #include + // Tell GCC that we'll take care of the instantiation explicitly here. #ifdef __GNUC__ #pragma implementation