40 lines
1.1 KiB
C++
40 lines
1.1 KiB
C++
#include "command.h"
|
|
|
|
namespace mshconsole{
|
|
inline const union Command::Data::Arg& Command::Data::getArg() const{
|
|
return d;
|
|
}
|
|
enum Command::Data::Types Command::Data::getType() const{
|
|
if(of->argInfo & POPT_ARG_INT || of->argInfo & POPT_ARG_VAL || of->argInfo == POPT_ARG_NONE){
|
|
return INT;
|
|
}
|
|
else if(of->argInfo & POPT_ARG_STRING){
|
|
return STRING;
|
|
}
|
|
else if(of->argInfo & POPT_ARG_LONG){
|
|
return LONG;
|
|
}
|
|
else if(of->argInfo & POPT_ARG_FLOAT){
|
|
return FLOAT;
|
|
}
|
|
else if(of->argInfo & POPT_ARG_DOUBLE){
|
|
return DOUBLE;
|
|
}
|
|
//else return NULL;
|
|
}
|
|
int Command::Data::getInt() const{
|
|
return d.i;
|
|
}
|
|
char* Command::Data::getString() const{
|
|
return d.i ? d.s : const_cast<char*>("");
|
|
}
|
|
long Command::Data::getLong() const{
|
|
return d.l;
|
|
}
|
|
float Command::Data::getFloat() const{
|
|
return d.f;
|
|
}
|
|
double Command::Data::getDouble() const{
|
|
return d.d;
|
|
}
|
|
}
|