コード例 #1
0
ファイル: Protocol.cpp プロジェクト: Jappen/telldus
int Protocol::getIntParameter(const std::wstring &name, int min, int max) const {
	std::wstring value = getStringParameter(name, L"");
	if (value == L"") {
		return min;
	}
	std::wstringstream st;
	st << value;
	int intValue = 0;
	st >> intValue;
	if (intValue < min) {
		return min;
	}
	if (intValue > max) {
		return max;
	}
	return intValue;
}
コード例 #2
0
ファイル: PRTAttrs.cpp プロジェクト: Esri/esri-cityengine-sdk
MStatus PRTAttrs::doIt(const MArgList& args) {
	MStatus stat;

	MString prtNodeName = args.asString(0, &stat);
	MCHECK(stat);

	MSelectionList tempList;
	tempList.add(prtNodeName);
	MObject prtNode;
	MCHECK(tempList.getDependNode(0, prtNode));
	MFnDependencyNode fNode(prtNode, &stat);
	MCHECK(stat);

	if(fNode.typeId().id() != PRT_TYPE_ID)
		return MS::kFailure;

	MString sRulePkg;
	updateRuleFiles(fNode, getStringParameter(prtNode, ((PRTNode*)fNode.userNode())->rulePkg, sRulePkg));

	MGlobal::executeCommand(MString("refreshEditorTemplates"));

	return MS::kSuccess;
}
コード例 #3
0
ファイル: WEvent.C プロジェクト: Dinesh-Ramakrishnan/wt
void JavaScriptEvent::get(const WebRequest& request, const std::string& se)
{
  std::string s = se;
  int seLength = se.length();

  type = getStringParameter(request, concat(s, seLength, "type"));
  boost::to_lower(type);

  clientX = parseIntParameter(request, concat(s, seLength, "clientX"), 0);
  clientY = parseIntParameter(request, concat(s, seLength, "clientY"), 0);
  documentX = parseIntParameter(request, concat(s, seLength, "documentX"), 0);
  documentY = parseIntParameter(request, concat(s, seLength, "documentY"), 0);
  screenX = parseIntParameter(request, concat(s, seLength, "screenX"), 0);
  screenY = parseIntParameter(request, concat(s, seLength, "screenY"), 0);
  widgetX = parseIntParameter(request, concat(s, seLength, "widgetX"), 0);
  widgetY = parseIntParameter(request, concat(s, seLength, "widgetY"), 0);
  dragDX = parseIntParameter(request, concat(s, seLength, "dragdX"), 0);
  dragDY = parseIntParameter(request, concat(s, seLength, "dragdY"), 0);
  wheelDelta = parseIntParameter(request, concat(s, seLength, "wheel"), 0);

  /*
  if (widgetX == 0 && widgetY == 0) {
    const int signalLength = 7 + se.length();
    const Http::ParameterMap& entries = request.getParameterMap();

    for (Http::ParameterMap::const_iterator i = entries.begin();
	 i != entries.end(); ++i) {
      std::string name = i->first;

      if (name.substr(0, signalLength) == concat(s, seLength, "signal=") {
	std::string e = name.substr(name.length() - 2);
	if (e == ".x") {
	  try {
	    widgetX = boost::lexical_cast<int>(i->second[0]);
	  } catch (const boost::bad_lexical_cast& ee) {
	  }
	} else if (e == ".y") {
	  try {
	    widgetY = boost::lexical_cast<int>(i->second[0]);
	  } catch (const boost::bad_lexical_cast& ee) {
	  }
	}
      }
    }
  }
  */

  modifiers = 0;
  if (request.getParameter(concat(s, seLength, "altKey")) != 0)
    modifiers |= AltModifier;

  if (request.getParameter(concat(s, seLength, "ctrlKey")) != 0)
    modifiers |= ControlModifier;

  if (request.getParameter(concat(s, seLength, "shiftKey")) != 0)
    modifiers |= ShiftModifier;

  if (request.getParameter(concat(s, seLength, "metaKey")) != 0)
    modifiers |= MetaModifier;

  keyCode = parseIntParameter(request, concat(s, seLength, "keyCode"), 0);
  charCode = parseIntParameter(request, concat(s, seLength, "charCode"), 0);

  button = parseIntParameter(request, concat(s, seLength, "button"), 0);

  scrollX = parseIntParameter(request, concat(s, seLength, "scrollX"), 0);
  scrollY = parseIntParameter(request, concat(s, seLength, "scrollY"), 0);
  viewportWidth = parseIntParameter(request, concat(s, seLength, "width"), 0);
  viewportHeight = parseIntParameter(request, concat(s, seLength, "height"), 0);

  response = getStringParameter(request, concat(s, seLength, "response"));

  int uean = parseIntParameter(request, concat(s, seLength, "an"), 0);
  userEventArgs.clear();
  for (int i = 0; i < uean; ++i) {
    userEventArgs.push_back
      (getStringParameter(request,
			  se + "a" + boost::lexical_cast<std::string>(i)));
  }

  decodeTouches(getStringParameter(request, concat(s, seLength, "touches")),
				   touches);
  decodeTouches(getStringParameter(request, concat(s, seLength, "ttouches")),
				   targetTouches);
  decodeTouches(getStringParameter(request, concat(s, seLength, "ctouches")),
				   changedTouches);  
}
コード例 #4
0
Control::Control( int argc, char** argv ) {

	// parse the command line options to set all vars

	if( ( argc % 2 == 0 ) || ( argc == 1 ) ) {
		cerr << "Parse error: Number of command line parameters incorrect\n";
		cerr << "Usage:" << endl;
		cerr << argv[ 0 ] << " -i InputFile [-o OutputFile] [-n NumberOfTries] [-s RandomSeed] [-t TimeLimit] [-p ProblemType]" << endl;
		exit(1);
	}
	
	for( int i = 1; i < argc / 2 + 1; i++ ) {
		parameters[ argv[ i * 2 - 1 ] ] = argv[ i * 2 ];
	}
	
	nrTry = 0;
	
	// check for input parameter
	
	if( parameterExists( "-i") ) {
		is = new ifstream( getStringParameter( "-i" ).c_str() );
	} else {
		cerr << "Error: No input file given, exiting" << endl;
		cerr << "Usage:" << endl;
		cerr << argv[ 0 ] << " -i InputFile [-o OutputFile] [-n NumberOfTries] [-s RandomSeed] [-t TimeLimit] [-p ProblemType]" << endl;
		exit(1);
	}
	
	// check for ouput parameter
	
	if( parameterExists( "-o" ) ) {
		os = new ofstream( getStringParameter( "-o" ).c_str() );
	} else {
		cerr << "Warning: No output file given, writing to stdout" << endl;
		os = &cout;
	}
	
	// check for number of tries parameter
	
	if( parameterExists( "-n" ) ) {
		maxTry = getIntParameter( "-n" );
		cout << "Max number of tries " << maxTry << endl;
	} else {
		cerr << "Warning: Number of tries is set to default (10)" << endl;
		maxTry = 10; // default number of tries
	}

	// check for time limit parameter
	
	if( parameterExists( "-t" ) ) {
		timeLimit = getDoubleParameter( "-t" );
		cout <<"Time limit " << timeLimit << endl;
	} else {
		cerr << "Warning: Time limit is set to default (90 sec)" << endl;
		timeLimit = 90; // default time limit
	}

        // check for problem instance type parameter for the local search

	if( parameterExists( "-p" ) ) {
		problemType = getIntParameter( "-p" );
		cout <<"Problem instance type " << problemType << endl;
	} else {
	  //cerr << "Warning: The problem instance type is set by default to 1 (easy)" << endl;
		problemType = 1; // default problem type
	}


        // check for maximum steps parameter for the local search
	
	if( parameterExists( "-m" ) ) {
		maxSteps = getIntParameter( "-m" );
		cout <<"Max number of steps in the local search " << maxSteps << endl;
	} else {
	  //cerr << "Warning: The maximum number of steps for the local search is set by default to 100" << endl;
		maxSteps = 100; // default max steps
	}

        // check for time limit parameter for the local search
	
	if( parameterExists( "-l" ) ) {
		LS_limit = getDoubleParameter( "-l" );
		cout <<"Local search time limit " << LS_limit << endl;
	} else {
		cerr << "Warning: The local search time limit is set to default (99999 sec)" << endl;
		LS_limit = 99999; // default local search time limit
	}

        // check for probability parameter for each move in the local search
	
	if( parameterExists( "-p1" ) ) {
		prob1 = getDoubleParameter( "-p1" );
		cout << "LS move 1 probability " << prob1 <<endl;
	} else {
		cerr << "Warning: The local search move 1 probability is set to default 1.0" << endl;
		prob1 = 1.0; // default local search probability for each move of type 1 to be performed
	}

	if( parameterExists( "-p2" ) ) {
		prob2 = getDoubleParameter( "-p2" );
		cout <<"LS move 2 probability " << prob2 << endl;
	} else {
		cerr << "Warning: The local search move 2 probability is set to default 1.0" << endl;
		prob2 = 1.0; // default local search probability for each move to be performed
	}

	if( parameterExists( "-p3" ) ) {
		prob3 = getDoubleParameter( "-p3" );
		cout <<"LS move 3 probability " << prob3 <<  endl;
	} else {
		cerr << "Warning: The local search move 3 probability is set to default 0.0" << endl;
		prob3 = 0.0; // default local search probability for each move to be performed
	}

	// check for random seed
	
	if( parameterExists( "-s" ) ) {
		seed = getIntParameter( "-s" );
		srand( seed );
	} else {
		seed = time( NULL );
		cerr << "Warning: " << seed << " used as default random seed" << endl;
		srand( seed );
	}
}
コード例 #5
0
ファイル: ParameterSource.cpp プロジェクト: c3di/ettention
 Vec2f ParameterSource::getVec2fParameter(std::string aName) const
 {
     return boost::lexical_cast<Vec2f>(replaceCommasWithSpaces(getStringParameter(aName)));
 }
コード例 #6
0
ファイル: ParameterSource.cpp プロジェクト: c3di/ettention
 unsigned int ParameterSource::getUIntParameter(std::string aName) const
 {
     return boost::lexical_cast<unsigned int>(getStringParameter(aName));
 }
コード例 #7
0
ファイル: ParameterSource.cpp プロジェクト: c3di/ettention
 bool ParameterSource::getBoolParameter(std::string aName) const
 {
     std::string strValue = getStringParameter(aName);
     return boost::lexical_cast<bool>(strValue);
 }