当前位置: 首页>>代码示例>>C++>>正文


C++ Bundle::rs方法代码示例

本文整理汇总了C++中Bundle::rs方法的典型用法代码示例。如果您正苦于以下问题:C++ Bundle::rs方法的具体用法?C++ Bundle::rs怎么用?C++ Bundle::rs使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Bundle的用法示例。


在下文中一共展示了Bundle::rs方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: function_ClearCharges

// Clears charge in current model ('clearcharges')
bool Commands::function_ClearCharges(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	obj.rs()->beginUndoState("Remove charges");
	obj.rs()->clearCharges();
	obj.rs()->endUndoState();
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:9,代码来源:charge.cpp

示例2: function_ChargePAtom

// Assign charge to a pattern atom, propagated over the model ('chargepatom <id> <q>')
bool Commands::function_ChargePAtom(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	obj.rs()->beginUndoState("Charge single pattern atom");
	obj.rs()->chargePatternAtom(obj.p,c->argi(0),c->argd(1));
	obj.rs()->endUndoState();
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:9,代码来源:charge.cpp

示例3: function_ChargeFF

// Assign charges from forcefield atom types ('chargeff')
bool Commands::function_ChargeFF(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	obj.rs()->beginUndoState("Assign forcefield charges");
	bool result = obj.rs()->assignForcefieldCharges();
	obj.rs()->endUndoState();
	return (result);
}
开发者ID:alinelena,项目名称:aten,代码行数:9,代码来源:charge.cpp

示例4: function_ChargeFromModel

// Copy atomic charges from model to model's current trajectory frame
bool Commands::function_ChargeFromModel(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	if (obj.rs() == obj.m) 
	{
		Messenger::print("Error - 'chargefrommodel' requires an active trajectory frame in the current model.");
		return false;
	}
	else obj.rs()->copyAtomData(obj.m, Atom::ChargeData);
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:12,代码来源:charge.cpp

示例5: function_LoadGrid

// Load grid ('loadgrid <filename>')
bool Commands::function_LoadGrid(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	Grid* g = NULL;

	if (aten_.importGrid(obj.rs(), c->argc(0))) g = obj.g;
	else return false;

	// Set return value
	rv.set(VTypes::GridData, g);
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:13,代码来源:grid.cpp

示例6: function_Charge

ATEN_USING_NAMESPACE

// Assign charge to selected atoms in model ('charge <q>'), or get charge of current selection
bool Commands::function_Charge(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	double q = 0.0;
	if (c->hasArg(0))
	{
		obj.rs()->beginUndoState("Charge selected atoms");
		for (RefListItem<Atom,int>* ri = obj.rs()->selection(); ri != NULL; ri = ri->next) obj.rs()->atomSetCharge(ri->item, c->argd(0));
		obj.rs()->endUndoState();
	}
	else
	{
		q = 0.0;
		for (RefListItem<Atom,int>* ri = obj.rs()->selection(); ri != NULL; ri = ri->next) q += ri->item->charge();
	}
	rv.set(q);
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:21,代码来源:charge.cpp

示例7: function_GetGrid

// Return nth grid of model
bool Commands::function_GetGrid(CommandNode* c, Bundle& obj, ReturnValue& rv)
{
	if (obj.notifyNull(Bundle::ModelPointer)) return false;
	Grid* g = NULL;
	switch (c->argType(0))
	{
		case (VTypes::IntegerData):
			g = obj.rs()->grid(c->argi(0)-1);
			break;
		case (VTypes::GridData):
			g = (Grid*) c->argp(0, VTypes::GridData);
			break;
		default:
			Messenger::print("Can't convert a variable of type '%s' to a Grid.", VTypes::dataType(c->argType(0)));
			break;
	}
	if (g == NULL) return false;
	rv.set(VTypes::GridData, g);
	return true;
}
开发者ID:alinelena,项目名称:aten,代码行数:21,代码来源:grid.cpp


注:本文中的Bundle::rs方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。