Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

JointVector.h

Go to the documentation of this file.
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