00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #pragma once
00012 #include "ippdme/ippdme.h"
00013 #include "ippdme/Property/ippOnePropertyCollisionVolume.h"
00014 #include "ippdme/ippGoToPars.h"
00015 #include "ippdme/ippPtMeasPars.h"
00016 #include "ippdme/ippScanPars.h"
00017 #include <string>
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076 class IPPDME_EXT_CLASS ippKTool : public ippObject
00077 {
00078 friend class ippToolChanger;
00079 private:
00080 double _angleA;
00081 double _angleB;
00082 double _angleC;
00083
00084 ippOnePropertyCollisionVolumePtr _collisionVolume;
00085 ippGoToParsPtr _goToPar;
00086 ippPtMeasParsPtr _ptMeasPar;
00087 ippScanParsPtr _scanPar;
00088
00089 std::string _id;
00090 bool _isQualified;
00091 double _length;
00092
00093 std::string _name;
00094 double _radius;
00095
00096 public:
00097 ippKTool();
00098 ippKTool(
00099 const char * inName,
00100 const char * inId,
00101 ippGoToParsPtr inGoToPar,
00102 ippPtMeasParsPtr inPtMeasPar,
00103 ippScanParsPtr inScanPar,
00104 bool inIsQualified,
00105 ippOnePropertyCollisionVolumePtr inCollisionVolume,
00106 double inLength,
00107 double inRadius
00108 );
00109
00110 virtual ~ippKTool();
00111
00112 double getAngleA()const {return _angleA;}
00113 double getAngleB()const {return _angleB;}
00114 double getAngleC()const {return _angleC;}
00115
00116 ippOnePropertyCollisionVolumePtr getCollisionVolume()const {return _collisionVolume; }
00117
00118 ippGoToParsPtr getGoToPar() const {return _goToPar;}
00119 ippPtMeasParsPtr getPtMeasPar() const {return _ptMeasPar;}
00120 ippScanParsPtr getScanPar() const { return _scanPar; }
00121
00122 const char * getId() const {return _id.c_str();}
00123
00124 bool getIsQualified() const {return _isQualified;}
00125 double getLength() const {return _length;}
00126
00127 const char * getName()const {return _name.c_str();}
00128
00129
00130 double getRadius() const {return _radius;}
00131
00132 void setAngleA(double inAngleA) {_angleA = inAngleA;}
00133 void setAngleB(double inAngleB) {_angleB = inAngleB;}
00134 void setAngleC(double inAngleC) {_angleC = inAngleC;}
00135
00136 void setCollisionVolume(ippOnePropertyCollisionVolume* inCollisionVolume)
00137 {_collisionVolume = inCollisionVolume;}
00138
00139 void setGoToPar(ippGoToPars* inGoToPar)
00140 {_goToPar = inGoToPar;}
00141 void setScanPar(ippScanPars* inScanPar)
00142 {_scanPar = inScanPar;}
00143
00144 void setIsQualified(bool inIsQualified)
00145 {_isQualified = inIsQualified;}
00146
00147 void setLength(double inLength)
00148 {_length = inLength;}
00149
00150 void setName(const char * inName)
00151 {_name = inName;}
00152
00153 void setPtMeasPar(ippPtMeasPars * inPtMeasPar)
00154 {_ptMeasPar = inPtMeasPar;}
00155
00156 void setRadius(double inRadius)
00157 {_radius = inRadius;}
00158
00159 private:
00160 ippKTool(const ippKTool&);
00161 void operator=(const ippKTool&);
00162
00163 };
00164 IPP_DECLARE_SMARTPOINTER(ippKTool);