]> git.mxchange.org Git - simgear.git/commitdiff
Modified Files:
authorfrohlich <frohlich>
Tue, 31 Oct 2006 06:14:38 +0000 (06:14 +0000)
committerfrohlich <frohlich>
Tue, 31 Oct 2006 06:14:38 +0000 (06:14 +0000)
  Makefile.am SGStateAttributeVisitor.hxx
  SGTextureStateAttributeVisitor.hxx
Added Files:
SGStateAttributeVisitor.cxx SGTextureStateAttributeVisitor.cxx:
Move implementation into cxx files

simgear/scene/util/Makefile.am
simgear/scene/util/SGStateAttributeVisitor.cxx [new file with mode: 0644]
simgear/scene/util/SGStateAttributeVisitor.hxx
simgear/scene/util/SGTextureStateAttributeVisitor.cxx [new file with mode: 0644]
simgear/scene/util/SGTextureStateAttributeVisitor.hxx

index 0241c3e0230dd93931ac84a13288e0f6a7438b1d..0d86352447ff8f248b83b5a4e62701ae9829d04c 100644 (file)
@@ -11,6 +11,8 @@ include_HEADERS = \
        SGStateAttributeVisitor.hxx \
        SGTextureStateAttributeVisitor.hxx
 
-libsgutil_a_SOURCES =
+libsgutil_a_SOURCES = \
+       SGStateAttributeVisitor.cxx \
+       SGTextureStateAttributeVisitor.cxx
 
 INCLUDES = -I$(top_srcdir)
diff --git a/simgear/scene/util/SGStateAttributeVisitor.cxx b/simgear/scene/util/SGStateAttributeVisitor.cxx
new file mode 100644 (file)
index 0000000..a5e9d37
--- /dev/null
@@ -0,0 +1,69 @@
+/* -*-c++-*-
+ *
+ * Copyright (C) 2006 Mathias Froehlich 
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ */
+
+#include "SGStateAttributeVisitor.hxx"
+
+SGStateAttributeVisitor::SGStateAttributeVisitor() :
+  osg::NodeVisitor(osg::NodeVisitor::NODE_VISITOR,
+                   osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+{
+}
+
+void
+SGStateAttributeVisitor::apply(osg::StateSet::RefAttributePair&)
+{
+}
+
+void
+SGStateAttributeVisitor::apply(osg::StateSet::AttributeList& attrList)
+{
+  osg::StateSet::AttributeList::iterator i;
+  i = attrList.begin();
+  while (i != attrList.end()) {
+    apply(i->second);
+    ++i;
+  }
+}
+
+void
+SGStateAttributeVisitor::apply(osg::StateSet* stateSet)
+{
+  if (!stateSet)
+    return;
+  apply(stateSet->getAttributeList());
+}
+
+void
+SGStateAttributeVisitor::apply(osg::Node& node)
+{
+  apply(node.getStateSet());
+  traverse(node);
+}
+
+void
+SGStateAttributeVisitor::apply(osg::Geode& node)
+{
+  unsigned nDrawables = node.getNumDrawables();
+  for (unsigned i = 0; i < nDrawables; ++i)
+    apply(node.getDrawable(i)->getStateSet());
+  apply(node.getStateSet());
+  traverse(node);
+}
index cd38141375aa5d08b46614d03eaa5aa13a9be6aa..b35747fcdf2e961d01f1943ab2ff0062e479810b 100644 (file)
 #ifndef SG_SCENE_STATEATTRIBUTEVISITOR_HXX
 #define SG_SCENE_STATEATTRIBUTEVISITOR_HXX
 
+#include <osg/Geode>
+#include <osg/Node>
+#include <osg/NodeVisitor>
+#include <osg/StateSet>
+
 class SGStateAttributeVisitor : public osg::NodeVisitor {
 public:
-  SGStateAttributeVisitor() :
-    osg::NodeVisitor(osg::NodeVisitor::NODE_VISITOR,
-                     osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
-  { }
-
-  virtual void apply(osg::StateSet::RefAttributePair&)
-  { }
-  virtual void apply(osg::StateSet::AttributeList& attrList)
-  {
-    osg::StateSet::AttributeList::iterator i;
-    i = attrList.begin();
-    while (i != attrList.end()) {
-      apply(i->second);
-      ++i;
-    }
-  }
-  virtual void apply(osg::StateSet* stateSet)
-  {
-    if (!stateSet)
-      return;
-    apply(stateSet->getAttributeList());
-  }
-
-  virtual void apply(osg::Node& node)
-  {
-    apply(node.getStateSet());
-    traverse(node);
-  }
-  virtual void apply(osg::Geode& node)
-  {
-    unsigned nDrawables = node.getNumDrawables();
-    for (unsigned i = 0; i < nDrawables; ++i)
-      apply(node.getDrawable(i)->getStateSet());
-    apply(node.getStateSet());
-    traverse(node);
-  }
+  SGStateAttributeVisitor();
+  virtual void apply(osg::StateSet::RefAttributePair&);
+  virtual void apply(osg::StateSet::AttributeList& attrList);
+  virtual void apply(osg::StateSet* stateSet);
+  virtual void apply(osg::Node& node);
+  virtual void apply(osg::Geode& node);
 };
 
 #endif
diff --git a/simgear/scene/util/SGTextureStateAttributeVisitor.cxx b/simgear/scene/util/SGTextureStateAttributeVisitor.cxx
new file mode 100644 (file)
index 0000000..816cbc8
--- /dev/null
@@ -0,0 +1,76 @@
+/* -*-c++-*-
+ *
+ * Copyright (C) 2006 Mathias Froehlich 
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ */
+
+#include "SGTextureStateAttributeVisitor.hxx"
+
+SGTextureStateAttributeVisitor::SGTextureStateAttributeVisitor() :
+  osg::NodeVisitor(osg::NodeVisitor::NODE_VISITOR,
+                   osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+{
+}
+
+void
+SGTextureStateAttributeVisitor::apply(int textureUnit, osg::StateSet::RefAttributePair& refAttr)
+{
+}
+
+void
+SGTextureStateAttributeVisitor::apply(int textureUnit, osg::StateSet::AttributeList& attrList)
+{
+  osg::StateSet::AttributeList::iterator i;
+  i = attrList.begin();
+  while (i != attrList.end()) {
+    apply(textureUnit, i->second);
+    ++i;
+  }
+}
+
+void
+SGTextureStateAttributeVisitor::apply(osg::StateSet::TextureAttributeList& attrList)
+{
+  for (unsigned i = 0; i < attrList.size(); ++i)
+    apply(i, attrList[i]);
+}
+
+void
+SGTextureStateAttributeVisitor::apply(osg::StateSet* stateSet)
+{
+  if (!stateSet)
+    return;
+  apply(stateSet->getTextureAttributeList());
+}
+
+void
+SGTextureStateAttributeVisitor::apply(osg::Node& node)
+{
+  apply(node.getStateSet());
+  traverse(node);
+}
+
+void
+SGTextureStateAttributeVisitor::apply(osg::Geode& node)
+{
+  unsigned nDrawables = node.getNumDrawables();
+  for (unsigned i = 0; i < nDrawables; ++i)
+    apply(node.getDrawable(i)->getStateSet());
+  apply(node.getStateSet());
+  traverse(node);
+}
index 7458f85ac607da2f336c497cbddfe9a6d1b4d2df..3a000d6d41984120253c785a1e60ffdc9f8b0d5a 100644 (file)
 #ifndef SG_SCENE_TEXTURESTATEATTRIBUTEVISITOR_HXX
 #define SG_SCENE_TEXTURESTATEATTRIBUTEVISITOR_HXX
 
+#include <osg/Geode>
+#include <osg/Node>
+#include <osg/NodeVisitor>
+#include <osg/StateSet>
+
 class SGTextureStateAttributeVisitor : public osg::NodeVisitor {
 public:
-  SGTextureStateAttributeVisitor() :
-    osg::NodeVisitor(osg::NodeVisitor::NODE_VISITOR,
-                     osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
-  { }
-
-  virtual void apply(int textureUnit, osg::StateSet::RefAttributePair& refAttr)
-  { }
-  virtual void apply(int textureUnit, osg::StateSet::AttributeList& attrList)
-  {
-    osg::StateSet::AttributeList::iterator i;
-    i = attrList.begin();
-    while (i != attrList.end()) {
-      apply(textureUnit, i->second);
-      ++i;
-    }
-  }
-  virtual void apply(osg::StateSet::TextureAttributeList& attrList)
-  {
-    for (unsigned i = 0; i < attrList.size(); ++i)
-      apply(i, attrList[i]);
-  }
-  virtual void apply(osg::StateSet* stateSet)
-  {
-    if (!stateSet)
-      return;
-    apply(stateSet->getTextureAttributeList());
-  }
+  SGTextureStateAttributeVisitor();
 
-  virtual void apply(osg::Node& node)
-  {
-    apply(node.getStateSet());
-    traverse(node);
-  }
-  virtual void apply(osg::Geode& node)
-  {
-    unsigned nDrawables = node.getNumDrawables();
-    for (unsigned i = 0; i < nDrawables; ++i)
-      apply(node.getDrawable(i)->getStateSet());
-    apply(node.getStateSet());
-    traverse(node);
-  }
+  virtual void apply(int textureUnit, osg::StateSet::RefAttributePair& refAttr);
+  virtual void apply(int textureUnit, osg::StateSet::AttributeList& attrList);
+  virtual void apply(osg::StateSet::TextureAttributeList& attrList);
+  virtual void apply(osg::StateSet* stateSet);
+  virtual void apply(osg::Node& node);
+  virtual void apply(osg::Geode& node);
 };
 
 #endif