00001 00002 // 00003 // Title : JointVector.h 00004 // Project : OSCAR Version 2.0 00005 // Created : 7/12/2002 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 : This file contains the declaration of class JointVector. 00028 // 00029 //----------------------------------------------------------------------------- 00030 // 00031 // $Revisions$ 00032 // 00033 // $Log: JointVector.h,v $ 00034 // Revision 1.10 2005/10/27 01:21:00 mitch 00035 // added Add method that checks for consistency in active joints 00036 // 00037 // Revision 1.10 2005/10/26 14:35:35 mitch 00038 // Added constructor method that takes a VectorNumeric as an argument. 00039 // 00040 // Revision 1.9 2005/03/14 22:04:17 pmarch 00041 // Added to namespace OSCAR and removed "RR" from front of class names. 00042 // 00043 // Revision 1.8 2004/07/19 20:02:28 djung 00044 // DUMMY_ERROR fix fix 00045 // 00046 // Revision 1.7 2004/07/19 16:37:02 edjung 00047 // -made fix to constructors for ANSI C++ compliance with temporary OSCARError objects 00048 // -added DUMMY_ERROR class 00049 // 00050 // Revision 1.6 2004/05/26 20:02:00 pmarch 00051 // Added /defgroup and /ingroup tags. 00052 // 00053 // Revision 1.5 2004/04/19 13:36:55 eswint 00054 // - Added explicit keyword to constructor JointVector(int, double*) 00055 // 00056 // Revision 1.4 2003/09/09 17:13:11 eswint 00057 // - Changed #include "Math/..." to #include "..." 00058 // 00059 // Revision 1.3 2003/09/05 16:57:21 eswint 00060 // - Added operator=(Vector) 00061 // 00062 // Revision 1.2 2003/09/04 22:47:59 eswint 00063 // - Change default arguments: OSCARError(0,"No Error"...) to OSCARError(noError) and String(" ") to String("") 00064 // 00065 // Revision 1.1 2003/08/18 15:23:37 eswint 00066 // Initial Commit 00067 // 00068 // 00070 #if !defined(AFX_JointVector_H__1C87AC45_EB8D_45A0_84F8_CDE2CD53324A__INCLUDED_) 00071 #define AFX_JointVector_H__1C87AC45_EB8D_45A0_84F8_CDE2CD53324A__INCLUDED_ 00072 00073 #if _MSC_VER > 1000 00074 #pragma once 00075 #endif // _MSC_VER > 1000 00076 00077 #include "CoordinateVector.h" 00078 00080 namespace OSCAR { 00081 00092 class JointVector : public CoordinateVector 00093 { 00094 00095 public: 00096 00107 explicit JointVector(unsigned int size, const double* array = 0); 00108 00121 JointVector(unsigned int size, const CoordinateStatusArray& statArray, OSCARError& err = DUMMY_ERROR(noError)); 00122 00130 JointVector(const JointVector& rhs); 00131 00137 virtual ~JointVector(); 00138 00147 JointVector& operator=(const JointVector& rhs); 00148 00156 JointVector& operator=(const Vector& rhs) { CoordinateVector::operator=(rhs); return *this;} 00157 00165 JointVector& operator=(const double rhs) { CoordinateVector::operator=(rhs); return *this;} 00166 00182 bool Add( JointVector& j, JointVector& result ); 00183 00184 }; 00185 00186 #include "JointVector.ipp" 00187 } 00188 00189 #endif // !defined(AFX_JointVector_H__1C87AC45_EB8D_45A0_84F8_CDE2CD53324A__INCLUDED_)
| RRG Homepage | OSCAR Overview | OSCAR Tutorials | Simulations |