00001 00002 // 00003 // Title : CylisphereData.h 00004 // Project : OSCAR 00005 // Created : November 9, 2004. 10:00 AM 00006 // Author : Chetan Kapoor 00007 // Platforms : All 00008 // Copyright : Copyright© The University of Texas at Austin, 2002. All rights reserved. 00009 // 00010 // This software and documentation constitute an unpublished work 00011 // and contain valuable trade secrets and proprietary information 00012 // belonging to the University. None of the foregoing material may be 00013 // copied or duplicated or disclosed without the express, written 00014 // permission of University. THE UNIVERSITY EXPRESSLY DISCLAIMS ANY 00015 // AND ALL WARRANTIES CONCERNING THIS SOFTWARE AND DOCUMENTATION, 00016 // INCLUDING ANY WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A 00017 // PARTICULAR PURPOSE, AND WARRANTIES OF PERFORMANCE, AND ANY WARRANTY 00018 // THAT MIGHT OTHERWISE ARISE FROM COURSE OF DEALING OR USAGE OF TRADE. 00019 // NO WARRANTY IS EITHER EXPRESS OR IMPLIED WITH RESPECT TO THE USE OF 00020 // THE SOFTWARE OR DOCUMENTATION. Under no circumstances shall the 00021 // University be liable for incidental, special, indirect, direct or 00022 // consequential damages or loss of profits, interruption of business, 00023 // or related expenses which may arise from use of software or documentation, 00024 // including but not limited to those resulting from defects in software 00025 // and/or documentation, or loss or inaccuracy of data of any kind. 00026 // 00027 // Purpose : Class for loading related data for a Cylisphere 00028 // specified in XML format 00029 // 00030 //---------------------------------------------------------------------------- 00031 // $Log: CylisphereData.h,v $ 00032 // Revision 1.7 2005/06/29 04:30:33 chetan 00033 // Quite a few changes to improve Output of XML and addition of custom root element names, addition of manipulator obstacle model, etc. 00034 // 00035 // Revision 1.6 2005/06/22 02:24:44 chetan 00036 // Added a protected constructor for derived classes and a static method for serializing corresponding objects to XML 00037 // 00038 // Revision 1.5 2005/06/03 22:09:24 chetan 00039 // Changed them to return ObstacleAvoidance/Cone, Cylisphere, Box, Plane, types 00040 // 00041 // Revision 1.4 2005/03/14 21:52:27 pmarch 00042 // Added to namespace OSCAR and removed "RR" from front of class names. 00043 // 00044 // Revision 1.3 2004/11/15 22:35:39 chetan 00045 // Added Get/Set Parameters methods 00046 // 00047 // Revision 1.2 2004/11/15 21:04:36 chetan 00048 // Added addition Set and Get method. Added Update method 00049 // 00050 // Revision 1.1 2004/11/11 23:19:27 chetan 00051 // Initial Committ 00052 // 00053 // 00054 // 00056 #ifndef CylisphereData_h 00057 #define CylisphereData_h 00058 00059 #include "FileData/XMLData.h" 00060 #include "ObstacleAvoidance/Cylisphere.hpp" 00061 00062 00063 XERCES_CPP_NAMESPACE_USE 00064 00065 00066 namespace OSCAR { 00067 00075 class CylisphereData : public XMLData 00076 { 00077 public: 00078 00092 CylisphereData(const String& inputFileName, OSCARError &err = DUMMY_ERROR(noError), const String& rootElementName = String("Cylisphere"), const String name = String(" ")); 00093 00112 CylisphereData(const char* xmlDataString, OSCARError &err = DUMMY_ERROR(noError), const String& rootElementName = String("Cylisphere"), const String name = String(" ")); 00113 00128 CylisphereData(const DOMElement* CylisphereNode, OSCARError &err = DUMMY_ERROR(noError), const String& rootElementName = String("Cylisphere"), const String name = String(" ")); 00129 00140 CylisphereData(const Cylisphere& cyli, OSCARError &err = DUMMY_ERROR(noError), const String& rootElementName = String("Cylisphere"), const String name = String(" ")); 00141 00142 00150 CylisphereData(const CylisphereData& rhs); 00151 00157 virtual ~CylisphereData(); 00158 00166 CylisphereData& operator=(const CylisphereData& rhs); 00167 00173 const Cylisphere* GetParameters() const; 00174 00180 bool SetParameters(const Cylisphere& cylisphere); 00181 00193 bool Output(std::ostream& out, bool nameSpaceHeader = false) const; 00194 00207 static bool Output(const Cylisphere* cyli, std::ostream& strm, const String& rootElementName=String("Cylisphere"), bool nameSpaceHeader=false); 00208 00209 protected: 00210 Cylisphere *cylisphere; 00211 00217 virtual bool parseParameters(const DOMElement* cylisphereNode); 00218 }; 00219 00220 } 00221 #endif // CylisphereData_h
| RRG Homepage | OSCAR Overview | OSCAR Tutorials | Simulations |