From 478274ae7d98fa6aa8d0e2d7355e621cd036bddd Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Fri, 14 Dec 2001 23:18:28 +0000 Subject: [PATCH] Fixes to Windows build in liu of the move to using just std::streams. --- include/osg/BoundsChecking | 16 +- include/osg/Matrix | 2 +- include/osg/Plane | 4 +- include/osg/Quat | 46 ++-- include/osg/Vec3 | 2 +- include/osgDB/FieldReaderIterator | 2 +- include/osgDB/Output | 12 +- include/osgGLUT/Viewer | 2 +- include/osgUtil/CullVisitor | 4 +- src/Demos/hangglide/GliderManipulator.cpp | 2 +- src/Demos/hangglide/hangglide.cpp | 30 +-- src/Demos/osgconv/osgconv.cpp | 46 ++-- src/Demos/osgimpostor/osgimpostor.cpp | 32 +-- src/Demos/osgreflect/osgreflect.cpp | 32 +-- src/Demos/osgviews/osgviews.cpp | 32 +-- src/Demos/sgv/sgv.cpp | 32 +-- src/osg/Camera.cpp | 4 +- src/osg/ClipPlane.cpp | 2 +- src/osg/Drawable.cpp | 2 +- src/osg/GLExtensions.cpp | 8 +- src/osg/GeoSet.cpp | 2 +- src/osg/Image.cpp | 6 +- src/osg/ImpostorSprite.cpp | 10 +- src/osg/Material.cpp | 40 ++-- src/osg/Matrix.cpp | 4 +- src/osg/Notify.cpp | 6 +- src/osg/PolygonMode.cpp | 2 +- src/osg/Quat.cpp | 4 +- src/osg/TexGen.cpp | 4 +- src/osg/Texture.cpp | 10 +- src/osgDB/DynamicLibrary.cpp | 6 +- src/osgDB/FieldReader.cpp | 2 +- src/osgDB/FieldReaderIterator.cpp | 2 +- src/osgDB/FileUtils.cpp | 12 +- src/osgDB/Output.cpp | 9 +- src/osgDB/ReadFile.cpp | 6 +- src/osgDB/Registry.cpp | 30 +-- src/osgDB/WriteFile.cpp | 6 +- src/osgGLUT/Viewer.cpp | 254 +++++++++++----------- src/osgGLUT/Window.cpp | 4 +- src/osgPlugins/flt/FltFile.cpp | 6 +- src/osgPlugins/flt/Input.cpp | 6 +- src/osgPlugins/flt/ReaderWriterATTR.cpp | 2 +- src/osgPlugins/flt/Record.cpp | 4 +- src/osgPlugins/flt/VertexPoolRecords.cpp | 10 +- src/osgPlugins/flt/VertexPoolRecords.h | 8 +- src/osgPlugins/flt/flt2osg.cpp | 2 +- src/osgPlugins/lib3ds/ReaderWriter3DS.cpp | 30 +-- src/osgPlugins/lwo/ReaderWriterLWO.cpp | 6 +- src/osgPlugins/obj/ReaderWriterOBJ.cpp | 24 +- src/osgPlugins/osg/AlphaFunc.cpp | 4 +- src/osgPlugins/osg/Billboard.cpp | 14 +- src/osgPlugins/osg/ClipPlane.cpp | 4 +- src/osgPlugins/osg/ColorMask.cpp | 8 +- src/osgPlugins/osg/CullFace.cpp | 6 +- src/osgPlugins/osg/Depth.cpp | 8 +- src/osgPlugins/osg/Drawable.cpp | 8 +- src/osgPlugins/osg/EarthSky.cpp | 6 +- src/osgPlugins/osg/Fog.cpp | 10 +- src/osgPlugins/osg/FrontFace.cpp | 4 +- src/osgPlugins/osg/GeoSet.cpp | 84 +++---- src/osgPlugins/osg/Geode.cpp | 2 +- src/osgPlugins/osg/Group.cpp | 2 +- src/osgPlugins/osg/Impostor.cpp | 2 +- src/osgPlugins/osg/LOD.cpp | 8 +- src/osgPlugins/osg/Light.cpp | 20 +- src/osgPlugins/osg/Material.cpp | 42 ++-- 67 files changed, 533 insertions(+), 528 deletions(-) diff --git a/include/osg/BoundsChecking b/include/osg/BoundsChecking index 97df07e22..840f41f37 100644 --- a/include/osg/BoundsChecking +++ b/include/osg/BoundsChecking @@ -18,7 +18,7 @@ inline void clampGEQUAL(T& value,const T minValue,const char* valueName) { if (valuemaxValue) { - notify(WARN) << "Warning: "<maxValue) { - notify(WARN) << "Warning: "<maxValue) { - notify(WARN) << "Warning: "<maxValue) { - notify(WARN) << "Warning: "< bool writeArrayBlock(Output& fw,T* start,T* finish) { - fw.indent() << "{" << endl; + fw.indent() << "{" << std::endl; fw.moveIn(); int numIndicesThisLine = 0; for(T* itr=start;itr!=finish;++itr) { if (numIndicesThisLine>=fw.getNumIndicesPerLine()) { - fw << endl; + fw << std::endl; numIndicesThisLine = 0; } @@ -107,9 +107,9 @@ bool writeArrayBlock(Output& fw,T* start,T* finish) ++numIndicesThisLine; } - fw << endl; + fw << std::endl; fw.moveOut(); - fw.indent() << "}" << endl; + fw.indent() << "}" << std::endl; return true; } diff --git a/include/osgGLUT/Viewer b/include/osgGLUT/Viewer index 9a9508ccf..510bc2d97 100644 --- a/include/osgGLUT/Viewer +++ b/include/osgGLUT/Viewer @@ -78,7 +78,7 @@ class OSGGLUT_EXPORT Viewer : public osgUtil::GUIActionAdapter double frameSeconds() { return _timer.delta_s(_lastFrameTick,_frameTick); } double frameRate() { return 1.0/frameSeconds(); } - void help(ostream& fout); + void help(std::ostream& fout); // handle multiple camera. unsigned int registerCameraManipulator(osgUtil::CameraManipulator* cm, diff --git a/include/osgUtil/CullVisitor b/include/osgUtil/CullVisitor index 515cadb86..ae473da36 100644 --- a/include/osgUtil/CullVisitor +++ b/include/osgUtil/CullVisitor @@ -314,7 +314,7 @@ class OSGUTIL_EXPORT CullVisitor : public osg::NodeVisitor while (_currentReuseMatrixIndex<_reuseMatrixList.size() && _reuseMatrixList[_currentReuseMatrixIndex]->referenceCount()>1) { - osg::notify(osg::NOTICE)<<"Warning:createOrReuseMatrix() skipping multiply refrenced entry."<referenceCount()>1) { - osg::notify(osg::NOTICE)<<"Warning:createOrReuseRenderLeaf() skipping multiply refrenced entry."<getNumChildren()==0) { - osg::notify(osg::NOTICE)<<"Error no data loaded."<getNumChildren()==1) diff --git a/src/Demos/osgimpostor/osgimpostor.cpp b/src/Demos/osgimpostor/osgimpostor.cpp index 5ccb0f7ba..c98faad8c 100644 --- a/src/Demos/osgimpostor/osgimpostor.cpp +++ b/src/Demos/osgimpostor/osgimpostor.cpp @@ -68,7 +68,7 @@ osg::Node* getNodeFromFiles(int argc,char **argv) if (nodeList.size()==0) { - osg::notify(osg::WARN) << "No data loaded."< osg::NotifySeverity osg::g_NotifyLevel = osg::NOTICE; -ofstream *osg::g_NotifyNulStream; +std::ofstream *osg::g_NotifyNulStream; bool osg::g_NotifyInit = false; void osg::setNotifyLevel(osg::NotifySeverity severity) @@ -27,9 +27,9 @@ bool osg::initNotifyLevel() // set up global notify null stream for inline notify #ifdef WIN32 - g_NotifyNulStream = new ofstream ("nul"); + g_NotifyNulStream = new std::ofstream ("nul"); #else - g_NotifyNulStream = new ofstream ("/dev/null"); + g_NotifyNulStream = new std::ofstream ("/dev/null"); #endif // g_NotifyLevel diff --git a/src/osg/PolygonMode.cpp b/src/osg/PolygonMode.cpp index 8cd59dd9f..fa77cee5d 100644 --- a/src/osg/PolygonMode.cpp +++ b/src/osg/PolygonMode.cpp @@ -49,7 +49,7 @@ const PolygonMode::Mode PolygonMode::getMode(const Face face) const case(FRONT_AND_BACK): return _modeFront; } - notify(WARN)<<"Warning : invalid Face passed to PolygonMode::getMode(Face face)"<readObject(filename); if (rr.validObject()) return rr.takeObject(); - if (rr.error()) notify(WARN) << rr.message() << endl; + if (rr.error()) notify(WARN) << rr.message() << std::endl; return NULL; } @@ -22,7 +22,7 @@ Image* osgDB::readImageFile(const std::string& filename) { ReaderWriter::ReadResult rr = Registry::instance()->readImage(filename); if (rr.validImage()) return rr.takeImage(); - if (rr.error()) notify(WARN) << rr.message() << endl; + if (rr.error()) notify(WARN) << rr.message() << std::endl; return NULL; } @@ -31,6 +31,6 @@ Node* osgDB::readNodeFile(const std::string& filename) { ReaderWriter::ReadResult rr = Registry::instance()->readNode(filename); if (rr.validNode()) return rr.takeNode(); - if (rr.error()) notify(WARN) << rr.message() << endl; + if (rr.error()) notify(WARN) << rr.message() << std::endl; return NULL; } diff --git a/src/osgDB/Registry.cpp b/src/osgDB/Registry.cpp index 33d5cbd8d..42c415803 100644 --- a/src/osgDB/Registry.cpp +++ b/src/osgDB/Registry.cpp @@ -35,7 +35,7 @@ class RegistryPtr // definition of the Registry Registry::Registry() { - notify(INFO) << "Constructing osg::Registry"<getName()<<")"<getName()<<")"<< std::endl; const DotOsgWrapper::Associates& assoc = wrapper->getAssociates(); for(DotOsgWrapper::Associates::const_iterator itr=assoc.begin(); itr!=assoc.end(); ++itr) { - notify(INFO) << " ("<<*itr<<")"<getName(); @@ -111,7 +111,7 @@ void Registry::removeDotOsgWrapper(DotOsgWrapper* wrapper) { if (wrapper==0L) return; -//// notify(INFO) << "osg::Registry::removeReaderWriter();"<className()<<")"<className()<<")"<< std::endl; _rwList.push_back(rw); @@ -140,7 +140,7 @@ void Registry::removeReaderWriter(ReaderWriter* rw) { if (rw==0L) return; -// notify(INFO) << "osg::Registry::removeReaderWriter();"<getPrototype(); if (proto==NULL) { - osg::notify(osg::WARN)<<"Token "<getPrototype(); if (proto==NULL) { - osg::notify(osg::WARN)<<"Token "<second.get(); const DotOsgWrapper::Associates& assoc = wrapper->getAssociates(); - fw.indent() << wrapper->getName() << " {"<getName() << " {"<< std::endl; fw.moveIn(); @@ -521,7 +521,7 @@ bool Registry::writeObject(const osg::Object& obj,Output& fw) std::string uniqueID; fw.createUniqueIDForObject(&obj,uniqueID); fw.registerUniqueIDForObject(&obj,uniqueID); - fw.indent() << "UniqueID " << uniqueID << endl; + fw.indent() << "UniqueID " << uniqueID << std::endl; } // read the local data by iterating through the associate @@ -542,7 +542,7 @@ bool Registry::writeObject(const osg::Object& obj,Output& fw) } fw.moveOut(); - fw.indent() << "}"<writeObject(object,filename); - if (wr.error()) notify(WARN) << wr.message() << endl; + if (wr.error()) notify(WARN) << wr.message() << std::endl; return wr.success(); } @@ -23,7 +23,7 @@ bool osgDB::writeObjectFile(const Object& object,const std::string& filename) bool osgDB::writeImageFile(const Image& image,const std::string& filename) { ReaderWriter::WriteResult wr = Registry::instance()->writeImage(image,filename); - if (wr.error()) notify(WARN) << wr.message() << endl; + if (wr.error()) notify(WARN) << wr.message() << std::endl; return wr.success(); } @@ -31,6 +31,6 @@ bool osgDB::writeImageFile(const Image& image,const std::string& filename) bool osgDB::writeNodeFile(const Node& node,const std::string& filename) { ReaderWriter::WriteResult wr = Registry::instance()->writeNode(node,filename); - if (wr.error()) notify(WARN) << wr.message() << endl; + if (wr.error()) notify(WARN) << wr.message() << std::endl; return wr.success(); } diff --git a/src/osgGLUT/Viewer.cpp b/src/osgGLUT/Viewer.cpp index cb3edc8de..b4421937d 100644 --- a/src/osgGLUT/Viewer.cpp +++ b/src/osgGLUT/Viewer.cpp @@ -114,10 +114,10 @@ Viewer::Viewer() _saveFileName = "saved_model.osg"; - osg::notify(osg::INFO)<<"Scene Graph Viewer (sgv)"<_cameraManipList.empty()) { - osg::notify(osg::NOTICE)<<"osgGLUT::Viewer::open() called without any camara manipulators registered for a viewport,"<_cameraManipulator->handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled reshape "<getStereoMode()==osgUtil::SceneView::QUAD_BUFFER_STEREO) needQuadBufferStereo = true; @@ -252,15 +252,15 @@ bool Viewer::open() displayMode |= GLUT_MULTISAMPLE; - osg::notify(osg::INFO) <<"osgGLUT::Viewer::open() requesting displayMode = "<handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled update frame"<maxbins)?primStats[0].getBins():maxbins; delete [] primStats; // free up @@ -725,7 +725,7 @@ void Viewer::display() } glutSwapBuffers(); // moved after draw of stats & glFinish() to get accurate timing (excluding stat draw!) - // cout << "Time elapsed "<<_timer.delta_s(_initialTick,_timer.tick())<1) glFinish(); @@ -758,7 +758,7 @@ void Viewer::reshape(GLint w, GLint h) if (itr->_cameraManipulator->handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled reshape "<handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled mouseMotion "<_buttonMask<<" x="<_mx<<" y="<_my<_buttonMask<<" x="<_mx<<" y="<_my<< std::endl; } mx = x; @@ -804,7 +804,7 @@ void Viewer::mousePassiveMotion(int x, int y) if (_viewportList[_focusedViewport]._cameraManipulator->handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled mousePassiveMotion "<_buttonMask<<" x="<_mx<<" y="<_my<_buttonMask<<" x="<_mx<<" y="<_my<< std::endl; } } @@ -828,7 +828,7 @@ void Viewer::mouse(int button, int state, int x, int y) if (_viewportList[_focusedViewport]._cameraManipulator->handle(*ea,*this)) { - // osg::notify(osg::INFO) << "Handled mouse "<_buttonMask<<" x="<_mx<<" y="<_my<_buttonMask<<" x="<_mx<<" y="<_my<< std::endl; } } @@ -900,7 +900,7 @@ void Viewer::keyboard(unsigned char key, int x, int y) // OpenGL display lists. osgUtil::DisplayListVisitor dlv(osgUtil::DisplayListVisitor::SWITCH_ON_DISPLAY_LISTS); sceneView->getSceneData()->accept(dlv); - osg::notify(osg::NOTICE) << "Switched on use of OpenGL Display Lists."<getSceneData()->accept(dlv); - osg::notify(osg::NOTICE) << "Switched off use of OpenGL Display Lists."<getSceneData()->accept(sv); - osg::notify(osg::NOTICE) << "Smoothed scene."<getSceneData()->accept(tsv); - osg::notify(osg::NOTICE) << "Tri Striping scene scene."<getSceneData() && osgDB::writeNodeFile(*sceneView->getSceneData(), _saveFileName)) { - osg::notify(osg::NOTICE) << "Saved scene to '"<<_saveFileName<<"'"<getCullVisitor()->setCullingMode((osgUtil::CullViewState::CullingMode) ((_smallFeatureCullingActive ? osgUtil::CullViewState::SMALL_FEATURE_CULLING : osgUtil::CullViewState::NO_CULLING) | @@ -1075,11 +1075,11 @@ void Viewer::keyboard(unsigned char key, int x, int y) sceneView->setPrioritizeTextures(!sceneView->getPrioritizeTextures()); if (sceneView->getPrioritizeTextures()) { - osg::notify(osg::NOTICE) << "Prioritize textures switched on "<projectWindowXYIntoObject(x,wh-y,near_point,far_point)) { - osg::notify(osg::NOTICE) << "Failed to calculate intersection ray."< LineSegment = new osg::LineSegment; LineSegment->set(near_point,far_point); - osg::notify(osg::NOTICE) << "start("<start()<<") end("<end()<<")"<start()<<") end("<end()<<")"<< std::endl; osgUtil::IntersectVisitor iv; iv.addLineSegment(LineSegment.get()); @@ -1113,7 +1113,7 @@ void Viewer::keyboard(unsigned char key, int x, int y) float endTime = clockSeconds(); - osg::notify(osg::NOTICE) << "Time for interesection = "<<(endTime-startTime)*1000<<"ms"<_intersectPoint; osg::Vec3 in = hitr->_intersectNormal; osg::Geode* geode = hitr->_geode; - osg::notify(osg::NOTICE) << " Itersection Point ("<_matrix) { osg::Vec3 ipEye = ip*(*(hitr->_matrix)); osg::Vec3 inEye = (in+ip)*(*(hitr->_matrix))-ipEye; inEye.normalize(); - if (geode) osg::notify(osg::NOTICE) << "Geode '"<getName()<getName()<< std::endl; + osg::notify(osg::NOTICE) << " Eye Itersection Point ("<_geoset; - osg::notify(osg::NOTICE) << " geoset ("<removeDrawable(gset)<<")"<removeDrawable(gset)<<")"<< std::endl; } } } - osg::notify(osg::NOTICE) << endl << endl; + osg::notify(osg::NOTICE) << std::endl << std::endl; } break; @@ -1157,79 +1157,79 @@ void Viewer::keyboard(unsigned char key, int x, int y) } -void Viewer::help(ostream& fout) +void Viewer::help(std::ostream& fout) { - fout <szPath); - osg::notify(osg::INFO) << "External=" << filename << endl; + osg::notify(osg::INFO) << "External=" << filename << std::endl; if (rec.getFlightVersion() > 13) { diff --git a/src/osgPlugins/flt/Input.cpp b/src/osgPlugins/flt/Input.cpp index c50db387a..e740be574 100644 --- a/src/osgPlugins/flt/Input.cpp +++ b/src/osgPlugins/flt/Input.cpp @@ -169,7 +169,7 @@ Record* Input::readCreateRecord(FltFile* pFltFile) if (pProto == NULL) { // Should not be possible to end up here! - osg::notify(osg::INFO) << "UnknownRecord not in registry!" << endl; + osg::notify(osg::INFO) << "UnknownRecord not in registry!" << std::endl; ::free(pData); return NULL; } @@ -178,7 +178,7 @@ Record* Input::readCreateRecord(FltFile* pFltFile) Record* pRec = pProto->cloneRecord(pData); if (pRec == NULL) { - osg::notify(osg::INFO) << "Can't clone record!" << endl; + osg::notify(osg::INFO) << "Can't clone record!" << std::endl; ::free(pData); return NULL; } @@ -189,7 +189,7 @@ Record* Input::readCreateRecord(FltFile* pFltFile) osg::notify(osg::ALWAYS) << "class=" << pRec->className(); osg::notify(osg::ALWAYS) << " op=" << pRec->getOpcode(); osg::notify(osg::ALWAYS) << " name=" << pRec->getName(); - osg::notify(osg::ALWAYS) << " offset=" << offset() << endl; + osg::notify(osg::ALWAYS) << " offset=" << offset() << std::endl; #endif if (isLittleEndianMachine()) // From Intel with love :-( diff --git a/src/osgPlugins/flt/ReaderWriterATTR.cpp b/src/osgPlugins/flt/ReaderWriterATTR.cpp index 95616b94e..dd4c11018 100644 --- a/src/osgPlugins/flt/ReaderWriterATTR.cpp +++ b/src/osgPlugins/flt/ReaderWriterATTR.cpp @@ -702,7 +702,7 @@ class ReaderWriterATTR : public osgDB::ReaderWriter StateSet* stateset = attr.createOsgStateSet(); - notify(INFO) << "texture attribute read ok" << endl; + notify(INFO) << "texture attribute read ok" << std::endl; return stateset; } diff --git a/src/osgPlugins/flt/Record.cpp b/src/osgPlugins/flt/Record.cpp index 22122b141..d01b50063 100644 --- a/src/osgPlugins/flt/Record.cpp +++ b/src/osgPlugins/flt/Record.cpp @@ -72,7 +72,7 @@ void Record::ascend(RecordVisitor& rv) } */ -ostream& operator << (ostream& output, const Record& rec) +std::ostream& operator << (std::ostream& output, const Record& rec) { output << rec.className() << " op=" << rec.getOpcode() @@ -177,7 +177,7 @@ bool PrimNodeRecord::readLevel(Input& fr) if (!pRec->isPrimaryNode()) { osg::notify(osg::WARN) << "Non primary record found as child. op=" - << pRec->getOpcode() << endl; + << pRec->getOpcode() << std::endl; return false; } diff --git a/src/osgPlugins/flt/VertexPoolRecords.cpp b/src/osgPlugins/flt/VertexPoolRecords.cpp index ccb487bbd..155b89473 100644 --- a/src/osgPlugins/flt/VertexPoolRecords.cpp +++ b/src/osgPlugins/flt/VertexPoolRecords.cpp @@ -34,7 +34,7 @@ void VertexPaletteRecord::endian() } -ostream& operator << (ostream& output, const VertexPaletteRecord& rec) +std::ostream& operator << (std::ostream& output, const VertexPaletteRecord& rec) { output << rec.className(); return output; // to enable cascading @@ -72,7 +72,7 @@ void VertexRecord::endian() } -ostream& operator << (ostream& output, const VertexRecord& rec) +std::ostream& operator << (std::ostream& output, const VertexRecord& rec) { output << rec.className() << " " << rec.getData()->swFlags << " " @@ -114,7 +114,7 @@ void NormalVertexRecord::endian() } -ostream& operator << (ostream& output, const NormalVertexRecord& rec) +std::ostream& operator << (std::ostream& output, const NormalVertexRecord& rec) { output << rec.className() << " " << rec.getData()->swFlags << " " @@ -156,7 +156,7 @@ void TextureVertexRecord::endian() } -ostream& operator << (ostream& output, const TextureVertexRecord& rec) +std::ostream& operator << (std::ostream& output, const TextureVertexRecord& rec) { output << rec.className() << " " << rec.getData()->swFlags << " " @@ -199,7 +199,7 @@ void NormalTextureVertexRecord::endian() } -ostream& operator << (ostream& output, const NormalTextureVertexRecord& rec) +std::ostream& operator << (std::ostream& output, const NormalTextureVertexRecord& rec) { output << rec.className() << " " << rec.getData()->swFlags << " " diff --git a/src/osgPlugins/flt/VertexPoolRecords.h b/src/osgPlugins/flt/VertexPoolRecords.h index 4fb891929..c7bd0786f 100644 --- a/src/osgPlugins/flt/VertexPoolRecords.h +++ b/src/osgPlugins/flt/VertexPoolRecords.h @@ -85,7 +85,7 @@ class VertexRecord : public AncillaryRecord virtual void accept(RecordVisitor& rv) { rv.apply(*this); } // virtual void traverse(RecordVisitor& rv); virtual SVertex* getData() const { return (SVertex*)_pData; } - friend ostream& operator << (ostream& output, const VertexRecord& rec); + friend std::ostream& operator << (std::ostream& output, const VertexRecord& rec); protected: virtual ~VertexRecord(); @@ -129,7 +129,7 @@ class NormalVertexRecord : public AncillaryRecord virtual void accept(RecordVisitor& rv) { rv.apply(*this); } // virtual void traverse(RecordVisitor& rv); virtual SNormalVertex* getData() const { return (SNormalVertex*)_pData; } - friend ostream& operator << (ostream& output, const NormalVertexRecord& rec); + friend std::ostream& operator << (std::ostream& output, const NormalVertexRecord& rec); protected: virtual ~NormalVertexRecord(); @@ -172,7 +172,7 @@ class TextureVertexRecord : public AncillaryRecord virtual void accept(RecordVisitor& rv) { rv.apply(*this); } // virtual void traverse(RecordVisitor& rv); virtual STextureVertex* getData() const { return (STextureVertex*)_pData; } - friend ostream& operator << (ostream& output, const TextureVertexRecord& rec); + friend std::ostream& operator << (std::ostream& output, const TextureVertexRecord& rec); protected: virtual ~TextureVertexRecord(); @@ -216,7 +216,7 @@ class NormalTextureVertexRecord : public AncillaryRecord virtual void accept(RecordVisitor& rv) { rv.apply(*this); } // virtual void traverse(RecordVisitor& rv); virtual SNormalTextureVertex* getData() const { return (SNormalTextureVertex*)_pData; } - friend ostream& operator << (ostream& output, const NormalTextureVertexRecord& rec); + friend std::ostream& operator << (std::ostream& output, const NormalTextureVertexRecord& rec); protected: virtual ~NormalTextureVertexRecord(); diff --git a/src/osgPlugins/flt/flt2osg.cpp b/src/osgPlugins/flt/flt2osg.cpp index 78aff6e65..27ec44f56 100644 --- a/src/osgPlugins/flt/flt2osg.cpp +++ b/src/osgPlugins/flt/flt2osg.cpp @@ -202,7 +202,7 @@ osg::Node* ConvertFromFLT::visitHeader(osg::Group* osgParent, HeaderRecord* rec) // Version _diOpenFlightVersion = pSHeader->diFormatRevLev; - osg::notify(osg::INFO) << "Version " << _diOpenFlightVersion << endl; + osg::notify(osg::INFO) << "Version " << _diOpenFlightVersion << std::endl; // Unit scale switch (pSHeader->swVertexCoordUnit) diff --git a/src/osgPlugins/lib3ds/ReaderWriter3DS.cpp b/src/osgPlugins/lib3ds/ReaderWriter3DS.cpp index 927007827..ce5ce97fc 100644 --- a/src/osgPlugins/lib3ds/ReaderWriter3DS.cpp +++ b/src/osgPlugins/lib3ds/ReaderWriter3DS.cpp @@ -91,7 +91,7 @@ osgDB::ReaderWriter::ReadResult ReaderWriter3DS::readNode(const std::string& fil if (materialFaceMap.empty()) { - osg::notify(osg::NOTICE)<<"Warning : no triangles assigned to mesh '"<name<<"'"<name<<"'"<< std::endl; } else { @@ -164,28 +164,28 @@ osg::Texture* ReaderWriter3DS::createTexture(Lib3dsTextureMap *texture,const ch std::string fileName = osgDB::findFileInDirectory(texture->name,_directory,true); if (fileName.empty()) { - osg::notify(osg::WARN) << "texture '"<name<<"' not found"<name<<"' not found"<< std::endl; return NULL; } if (label) osg::notify(osg::DEBUG_INFO) << label; else osg::notify(osg::DEBUG_INFO) << "texture name"; - osg::notify(osg::DEBUG_INFO) << " '"<name<<"'"<flags<flags)&LIB3DS_DECALE)<flags)&LIB3DS_MIRROR)<flags)&LIB3DS_NEGATE)<flags)&LIB3DS_NO_TILE)<flags)&LIB3DS_SUMMED_AREA)<flags)&LIB3DS_ALPHA_SOURCE)<flags)&LIB3DS_TINT)<flags)&LIB3DS_IGNORE_ALPHA)<flags)&LIB3DS_RGB_TINT)<name<<"'"<< std::endl; + osg::notify(osg::DEBUG_INFO) << " texture flag "<flags<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_DECALE "<<((texture->flags)&LIB3DS_DECALE)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_MIRROR "<<((texture->flags)&LIB3DS_MIRROR)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_NEGATE "<<((texture->flags)&LIB3DS_NEGATE)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_NO_TILE "<<((texture->flags)&LIB3DS_NO_TILE)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_SUMMED_AREA "<<((texture->flags)&LIB3DS_SUMMED_AREA)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_ALPHA_SOURCE "<<((texture->flags)&LIB3DS_ALPHA_SOURCE)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_TINT "<<((texture->flags)&LIB3DS_TINT)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_IGNORE_ALPHA "<<((texture->flags)&LIB3DS_IGNORE_ALPHA)<< std::endl; + osg::notify(osg::DEBUG_INFO) << " LIB3DS_RGB_TINT "<<((texture->flags)&LIB3DS_RGB_TINT)<< std::endl; osg::Image* osg_image = osgDB::readImageFile(fileName.c_str()); if (osg_image==NULL) { - osg::notify(osg::NOTICE) << "Warning: Cannot create texture "<name<name<< std::endl; return NULL; } @@ -335,7 +335,7 @@ osg::GeoSet* ReaderWriter3DS::createGeoSet(Lib3dsMesh *m,FaceList& faceList) } else { - osg::notify(osg::WARN)<<"Warning: in 3ds loader m->texels ("<texels<<") != m->points ("<points<<")"<texels ("<texels<<") != m->points ("<points<<")"<< std::endl; } } diff --git a/src/osgPlugins/lwo/ReaderWriterLWO.cpp b/src/osgPlugins/lwo/ReaderWriterLWO.cpp index a5f8bb024..a3158eed1 100644 --- a/src/osgPlugins/lwo/ReaderWriterLWO.cpp +++ b/src/osgPlugins/lwo/ReaderWriterLWO.cpp @@ -60,9 +60,9 @@ osgDB::ReaderWriter::ReadResult ReaderWriterLWO::readNode(const std::string& fil if (!lw) return ReadResult::FILE_NOT_HANDLED; - osg::notify(osg::INFO) << "faces " << lw->face_cnt << endl; - osg::notify(osg::INFO) << "materials " << lw->material_cnt << endl; - osg::notify(osg::INFO) << "vertices " << lw->vertex_cnt << endl; + osg::notify(osg::INFO) << "faces " << lw->face_cnt << std::endl; + osg::notify(osg::INFO) << "materials " << lw->material_cnt << std::endl; + osg::notify(osg::INFO) << "vertices " << lw->vertex_cnt << std::endl; // shared coordinates typedef std::map MaterialTriangles; diff --git a/src/osgPlugins/obj/ReaderWriterOBJ.cpp b/src/osgPlugins/obj/ReaderWriterOBJ.cpp index 20b0e0b4f..fabf38c42 100644 --- a/src/osgPlugins/obj/ReaderWriterOBJ.cpp +++ b/src/osgPlugins/obj/ReaderWriterOBJ.cpp @@ -69,17 +69,17 @@ osgDB::ReaderWriter::ReadResult ReaderWriterOBJ::readNode(const std::string& fil std::string directory = osgDB::getFilePath(fileName); - osg::notify(osg::INFO) << "vertices " << obj->numvertices << endl; - osg::notify(osg::INFO) << "normals " << obj->numnormals << endl; - osg::notify(osg::INFO) << "texcoords " << obj->numtexcoords << endl; - osg::notify(osg::INFO) << "face normals " << obj->numfacetnorms << endl; - osg::notify(osg::INFO) << "tris " << obj->numtriangles << endl; - osg::notify(osg::INFO) << "materials " << obj->nummaterials << endl; - osg::notify(osg::INFO) << "groups " << obj->numgroups << endl; + osg::notify(osg::INFO) << "vertices " << obj->numvertices << std::endl; + osg::notify(osg::INFO) << "normals " << obj->numnormals << std::endl; + osg::notify(osg::INFO) << "texcoords " << obj->numtexcoords << std::endl; + osg::notify(osg::INFO) << "face normals " << obj->numfacetnorms << std::endl; + osg::notify(osg::INFO) << "tris " << obj->numtriangles << std::endl; + osg::notify(osg::INFO) << "materials " << obj->nummaterials << std::endl; + osg::notify(osg::INFO) << "groups " << obj->numgroups << std::endl; if (obj->numnormals==0) { - osg::notify(osg::NOTICE) << "No normals in .obj file, automatically calculating normals..."<nummaterials]; for (i = 0; i < obj->nummaterials; i++) { GLMmaterial* omtl = &(obj->materials[i]); - osg::notify(osg::DEBUG_INFO) << "mtl: " << omtl->name << endl; + osg::notify(osg::DEBUG_INFO) << "mtl: " << omtl->name << std::endl; osg::StateSet* stateset = new osg::StateSet; osg_mtl[i] = stateset; @@ -139,12 +139,12 @@ osgDB::ReaderWriter::ReadResult ReaderWriterOBJ::readNode(const std::string& fil } else { - osg::notify(osg::NOTICE) << "Warning: Cannot create texture "<textureName<textureName<< std::endl; } } else { - osg::notify(osg::WARN) << "texture '"<textureName<<"' not found"<textureName<<"' not found"<< std::endl; } } } @@ -396,7 +396,7 @@ osg::Drawable* ReaderWriterOBJ::makeDrawable(GLMmodel* obj, gset->setStateSet(mtl[grp->material]); } else - osg::notify(osg::INFO) << "Group " << grp->name << " has no material" << endl; + osg::notify(osg::INFO) << "Group " << grp->name << " has no material" << std::endl; return gset; } diff --git a/src/osgPlugins/osg/AlphaFunc.cpp b/src/osgPlugins/osg/AlphaFunc.cpp index 2d25aca07..05fd236e4 100644 --- a/src/osgPlugins/osg/AlphaFunc.cpp +++ b/src/osgPlugins/osg/AlphaFunc.cpp @@ -54,8 +54,8 @@ bool AlphaFunc_writeLocalData(const Object& obj,Output& fw) { const AlphaFunc& alphaFunc = static_cast(obj); - fw.indent() << "comparisonFunc " << AlphaFunc_getFuncStr(alphaFunc.getFunction()) << endl; - fw.indent() << "referenceValue " << alphaFunc.getReferenceValue() << endl; + fw.indent() << "comparisonFunc " << AlphaFunc_getFuncStr(alphaFunc.getFunction()) << std::endl; + fw.indent() << "referenceValue " << alphaFunc.getReferenceValue() << std::endl; return true; } diff --git a/src/osgPlugins/osg/Billboard.cpp b/src/osgPlugins/osg/Billboard.cpp index 024f968e3..1914aa2b1 100644 --- a/src/osgPlugins/osg/Billboard.cpp +++ b/src/osgPlugins/osg/Billboard.cpp @@ -111,15 +111,15 @@ bool Billboard_writeLocalData(const Object& obj, Output& fw) switch(billboard.getMode()) { - case(Billboard::AXIAL_ROT): fw.indent() << "Mode AXIAL_ROT"<(obj); - fw.indent() << "clipPlaneNum " << clipplane.getClipPlaneNum() <(obj); - fw.indent() << "redMask " << ColorMask_getModeStr(colormask.getRedMask()) << endl; - fw.indent() << "greenMask " << ColorMask_getModeStr(colormask.getGreenMask()) << endl; - fw.indent() << "blueMask " << ColorMask_getModeStr(colormask.getBlueMask()) << endl; - fw.indent() << "alphaMask " << ColorMask_getModeStr(colormask.getAlphaMask()) << endl; + fw.indent() << "redMask " << ColorMask_getModeStr(colormask.getRedMask()) <(obj); - fw.indent() << "function " << Depth_getFuncStr(depth.getFunction()) << endl; + fw.indent() << "function " << Depth_getFuncStr(depth.getFunction()) << std::endl; fw.indent() << "writeMask "; - if (depth.getWriteMask()) fw << "TRUE" << endl; - else fw << "TRUE" << endl; + if (depth.getWriteMask()) fw << "TRUE" << std::endl; + else fw << "TRUE" << std::endl; - fw.indent() << "range " << depth.getZNear() << " " << depth.getZFar() << endl; + fw.indent() << "range " << depth.getZNear() << " " << depth.getZFar() << std::endl; return true; } diff --git a/src/osgPlugins/osg/Drawable.cpp b/src/osgPlugins/osg/Drawable.cpp index ed685dcea..947967d98 100644 --- a/src/osgPlugins/osg/Drawable.cpp +++ b/src/osgPlugins/osg/Drawable.cpp @@ -82,13 +82,13 @@ bool Drawable_writeLocalData(const Object& obj, Output& fw) if (!drawable.getSupportsDisplayList()) { fw.indent()<<"supportsDisplayList "; - if (drawable.getSupportsDisplayList()) fw << "TRUE" <(obj); - fw.indent() << "mode " << Fog_getModeStr(fog.getMode()) << endl; - fw.indent() << "density " << fog.getDensity() << endl; - fw.indent() << "start " << fog.getStart() << endl; - fw.indent() << "end " << fog.getEnd() << endl; - fw.indent() << "color " << fog.getColor() << endl; + fw.indent() << "mode " << Fog_getModeStr(fog.getMode()) << std::endl; + fw.indent() << "density " << fog.getDensity() << std::endl; + fw.indent() << "start " << fog.getStart() << std::endl; + fw.indent() << "end " << fog.getEnd() << std::endl; + fw.indent() << "color " << fog.getColor() << std::endl; return true; } diff --git a/src/osgPlugins/osg/FrontFace.cpp b/src/osgPlugins/osg/FrontFace.cpp index 05ca03b3a..f9c96fe26 100644 --- a/src/osgPlugins/osg/FrontFace.cpp +++ b/src/osgPlugins/osg/FrontFace.cpp @@ -53,8 +53,8 @@ bool FrontFace_writeLocalData(const Object& obj, Output& fw) switch(frontface.getMode()) { - case(FrontFace::CLOCKWISE): fw.indent() << "mode CLOCKWISE" << endl; break; - case(FrontFace::COUNTER_CLOCKWISE): fw.indent() << "mode COUNTER_CLOCKWISE" << endl; break; + case(FrontFace::CLOCKWISE): fw.indent() << "mode CLOCKWISE" << std::endl; break; + case(FrontFace::COUNTER_CLOCKWISE): fw.indent() << "mode COUNTER_CLOCKWISE" << std::endl; break; } return true; } diff --git a/src/osgPlugins/osg/GeoSet.cpp b/src/osgPlugins/osg/GeoSet.cpp index ba29ac3b7..bf262d796 100644 --- a/src/osgPlugins/osg/GeoSet.cpp +++ b/src/osgPlugins/osg/GeoSet.cpp @@ -661,57 +661,57 @@ bool GeoSet_writeLocalData(const Object& obj, Output& fw) switch(geoset.getPrimType()) { case (GeoSet::TRIANGLE_STRIP): - fw.indent()<<"tstrips "<< geoset.getNumPrims() << endl; + fw.indent()<<"tstrips "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::FLAT_TRIANGLE_STRIP): - fw.indent()<<"flat_tstrips "<< geoset.getNumPrims() << endl; + fw.indent()<<"flat_tstrips "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::POLYGON): - fw.indent()<<"polys "<< geoset.getNumPrims() << endl; + fw.indent()<<"polys "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::QUAD_STRIP): - fw.indent()<<"quadstrip "<< geoset.getNumPrims() << endl; + fw.indent()<<"quadstrip "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::LINE_LOOP): - fw.indent()<<"lineloops "<< geoset.getNumPrims() << endl; + fw.indent()<<"lineloops "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::LINE_STRIP): - fw.indent()<<"linestrip "<< geoset.getNumPrims() << endl; + fw.indent()<<"linestrip "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = false; break; case (GeoSet::FLAT_LINE_STRIP): - fw.indent()<<"flat_linestrip "<< geoset.getNumPrims() << endl; + fw.indent()<<"flat_linestrip "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = false; break; case (GeoSet::TRIANGLE_FAN): - fw.indent()<<"tfans "<< geoset.getNumPrims() << endl; + fw.indent()<<"tfans "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; case (GeoSet::FLAT_TRIANGLE_FAN): - fw.indent()<<"flat_tfans "<< geoset.getNumPrims() << endl; + fw.indent()<<"flat_tfans "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = true; break; case (GeoSet::LINES): - fw.indent()<<"lines "<< geoset.getNumPrims() << endl; + fw.indent()<<"lines "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = false; break; case (GeoSet::TRIANGLES): - fw.indent()<<"triangles "<< geoset.getNumPrims() << endl; + fw.indent()<<"triangles "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = false; break; case (GeoSet::QUADS): - fw.indent()<<"quads "<< geoset.getNumPrims() << endl; + fw.indent()<<"quads "<< geoset.getNumPrims() << std::endl; writeOutPrimitiveLengths = false; break; case (GeoSet::POINTS) : - fw.indent()<<"points "<< geoset.getNumPrims() << endl; + fw.indent()<<"points "<< geoset.getNumPrims() << std::endl; break; default: - notify(WARN) << "GeoSet::writeLocalData() - unhandled primitive type = "<<(int)geoset.getPrimType()<(obj); - fw.indent() << "num_drawables " << geode.getNumDrawables() << endl; + fw.indent() << "num_drawables " << geode.getNumDrawables() << std::endl; for(int i=0;i(obj); - fw.indent() << "num_children " << group.getNumChildren() << endl; + fw.indent() << "num_children " << group.getNumChildren() << std::endl; for(int i=0;i(obj); - fw.indent() << "ImpostorThreshold "<< impostor.getImpostorThreshold() <(obj); - fw.indent() << "Center "<< lod.getCenter() <(obj); // Vec4's - fw.indent() << "ambient " << light.getAmbient() << endl; - fw.indent() << "diffuse " << light.getDiffuse() << endl; - fw.indent() << "specular " << light.getSpecular() << endl; - fw.indent() << "position " << light.getPosition() << endl; + fw.indent() << "ambient " << light.getAmbient() << std::endl; + fw.indent() << "diffuse " << light.getDiffuse() << std::endl; + fw.indent() << "specular " << light.getSpecular() << std::endl; + fw.indent() << "position " << light.getPosition() << std::endl; // Vec3's - fw.indent() << "direction " << light.getDirection() << endl; + fw.indent() << "direction " << light.getDirection() << std::endl; // float's - fw.indent() << "constant_attenuation " << light.getConstantAttenuation() << endl; - fw.indent() << "linear_attenuation " << light.getLinearAttenuation () << endl; - fw.indent() << "quadratic_attenuation " << light.getQuadraticAttenuation() << endl; - fw.indent() << "spot_exponent " << light.getSpotExponent() << endl; - fw.indent() << "spot_cutoff " << light.getSpotCutoff() << endl; + fw.indent() << "constant_attenuation " << light.getConstantAttenuation() << std::endl; + fw.indent() << "linear_attenuation " << light.getLinearAttenuation () << std::endl; + fw.indent() << "quadratic_attenuation " << light.getQuadraticAttenuation() << std::endl; + fw.indent() << "spot_exponent " << light.getSpotExponent() << std::endl; + fw.indent() << "spot_cutoff " << light.getSpotCutoff() << std::endl; return true; } diff --git a/src/osgPlugins/osg/Material.cpp b/src/osgPlugins/osg/Material.cpp index c5515207e..727d211ba 100644 --- a/src/osgPlugins/osg/Material.cpp +++ b/src/osgPlugins/osg/Material.cpp @@ -191,62 +191,62 @@ bool Material_writeLocalData(const Object& obj, Output& fw) switch(material.getColorMode()) { - case(Material::AMBIENT): fw.indent() << "ColorMode AMBIENT" << endl; break; - case(Material::DIFFUSE): fw.indent() << "ColorMode DIFFUSE" << endl; break; - case(Material::SPECULAR): fw.indent() << "ColorMode SPECULAR" << endl; break; - case(Material::EMISSION): fw.indent() << "ColorMode EMISSION" << endl; break; - case(Material::AMBIENT_AND_DIFFUSE): fw.indent() << "ColorMode AMBIENT_AND_DIFFUSE" << endl; break; - case(Material::OFF): fw.indent() << "ColorMode OFF" << endl; break; + case(Material::AMBIENT): fw.indent() << "ColorMode AMBIENT" << std::endl; break; + case(Material::DIFFUSE): fw.indent() << "ColorMode DIFFUSE" << std::endl; break; + case(Material::SPECULAR): fw.indent() << "ColorMode SPECULAR" << std::endl; break; + case(Material::EMISSION): fw.indent() << "ColorMode EMISSION" << std::endl; break; + case(Material::AMBIENT_AND_DIFFUSE): fw.indent() << "ColorMode AMBIENT_AND_DIFFUSE" << std::endl; break; + case(Material::OFF): fw.indent() << "ColorMode OFF" << std::endl; break; } if (material.getAmbientFrontAndBack()) { - fw.indent() << "ambientColor " << material.getAmbient(Material::FRONT) << endl; + fw.indent() << "ambientColor " << material.getAmbient(Material::FRONT) << std::endl; } else { - fw.indent() << "ambientColor FRONT " << material.getAmbient(Material::FRONT) << endl; - fw.indent() << "ambientColor BACK " << material.getAmbient(Material::BACK) << endl; + fw.indent() << "ambientColor FRONT " << material.getAmbient(Material::FRONT) << std::endl; + fw.indent() << "ambientColor BACK " << material.getAmbient(Material::BACK) << std::endl; } if (material.getDiffuseFrontAndBack()) { - fw.indent() << "diffuseColor " << material.getDiffuse(Material::FRONT) << endl; + fw.indent() << "diffuseColor " << material.getDiffuse(Material::FRONT) << std::endl; } else { - fw.indent() << "diffuseColor FRONT " << material.getDiffuse(Material::FRONT) << endl; - fw.indent() << "diffuseColor BACK " << material.getDiffuse(Material::BACK) << endl; + fw.indent() << "diffuseColor FRONT " << material.getDiffuse(Material::FRONT) << std::endl; + fw.indent() << "diffuseColor BACK " << material.getDiffuse(Material::BACK) << std::endl; } if (material.getSpecularFrontAndBack()) { - fw.indent() << "specularColor " << material.getSpecular(Material::FRONT) << endl; + fw.indent() << "specularColor " << material.getSpecular(Material::FRONT) << std::endl; } else { - fw.indent() << "specularColor FRONT " << material.getSpecular(Material::FRONT) << endl; - fw.indent() << "specularColor BACK " << material.getSpecular(Material::BACK) << endl; + fw.indent() << "specularColor FRONT " << material.getSpecular(Material::FRONT) << std::endl; + fw.indent() << "specularColor BACK " << material.getSpecular(Material::BACK) << std::endl; } if (material.getEmissionFrontAndBack()) { - fw.indent() << "emissionColor " << material.getEmission(Material::FRONT) << endl; + fw.indent() << "emissionColor " << material.getEmission(Material::FRONT) << std::endl; } else { - fw.indent() << "emissionColor FRONT " << material.getEmission(Material::FRONT) << endl; - fw.indent() << "emissionColor BACK " << material.getEmission(Material::BACK) << endl; + fw.indent() << "emissionColor FRONT " << material.getEmission(Material::FRONT) << std::endl; + fw.indent() << "emissionColor BACK " << material.getEmission(Material::BACK) << std::endl; } if (material.getShininessFrontAndBack()) { - fw.indent() << "shininess " << material.getShininess(Material::FRONT) << endl; + fw.indent() << "shininess " << material.getShininess(Material::FRONT) << std::endl; } else { - fw.indent() << "shininess FRONT " << material.getShininess(Material::FRONT) << endl; - fw.indent() << "shininess BACK " << material.getShininess(Material::BACK) << endl; + fw.indent() << "shininess FRONT " << material.getShininess(Material::FRONT) << std::endl; + fw.indent() << "shininess BACK " << material.getShininess(Material::BACK) << std::endl; } return true;