00001 // 00002 // DISCLAIMER: 00003 // This software was produced by the National Institute of Standards 00004 // and Technology (NIST), an agency of the U.S. government, and by statute is 00005 // not subject to copyright in the United States. Recipients of this 00006 // software assume all responsibility associated with its operation, 00007 // modification,maintenance, and subsequent redistribution. 00008 // 00009 // See NIST Administration Manual 4.09.07 b and Appendix I. 00010 // 00011 #include "stdafx.h" 00012 #include "ippdme/Command/ippLockAxisCommand.h" 00013 #include "ippdme/misc/ippStringBuilder.h" 00014 00015 ippLockAxisCommand::ippLockAxisCommand( 00016 unsigned int tgNum, bool inHasC, bool inHasPhi, 00017 bool inHasR, bool inHasX, bool inHasY, bool inHasZ 00018 ) 00019 : ippCommand(tgNum, CommandTag, LockAxis) 00020 { 00021 _hasC = inHasC; 00022 _hasPhi = inHasPhi; 00023 _hasR = inHasR; 00024 _hasX = inHasX; 00025 _hasY = inHasY; 00026 _hasZ = inHasZ; 00027 } 00028 00029 std::string ippLockAxisCommand::getCommandString() const 00030 { 00031 ippStringBuilder builder(_tag); 00032 builder.StartFunc("LockAxis"); 00033 if (_hasC) { 00034 builder.AppendFunc("C"); 00035 } 00036 if (_hasPhi){ 00037 builder.AppendFunc("Phi"); 00038 } 00039 if (_hasR) { 00040 builder.AppendFunc("R"); 00041 } 00042 if (_hasX) { 00043 builder.AppendFunc("X"); 00044 } 00045 if (_hasY){ 00046 builder.AppendFunc("Y"); 00047 } 00048 if (_hasZ) { 00049 builder.AppendFunc("Z"); 00050 } 00051 builder.EndFunc(); 00052 return builder.ToString(); 00053 } 00054