本文整理汇总了C++中WorkspaceObject::setPointer方法的典型用法代码示例。如果您正苦于以下问题:C++ WorkspaceObject::setPointer方法的具体用法?C++ WorkspaceObject::setPointer怎么用?C++ WorkspaceObject::setPointer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorkspaceObject
的用法示例。
在下文中一共展示了WorkspaceObject::setPointer方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: object
TEST_F(IdfFixture,WorkspaceObjectWatcher_RelationshipFieldChanges_TargetDeleted)
{
IdfObject object(IddObjectType::Lights);
Workspace workspace(StrictnessLevel::Draft, IddFileType::EnergyPlus);
OptionalWorkspaceObject owo = workspace.addObject(object);
ASSERT_TRUE(owo);
WorkspaceObject workspaceObject = *owo;
WorkspaceObjectWatcher watcher(workspaceObject);
EXPECT_FALSE(watcher.dirty());
OptionalWorkspaceObject oZone = workspace.addObject(IdfObject(IddObjectType::Zone));
ASSERT_TRUE(oZone);
EXPECT_TRUE(workspaceObject.setPointer(LightsFields::ZoneorZoneListName, oZone->handle()));
EXPECT_TRUE(watcher.dirty());
EXPECT_FALSE(watcher.dataChanged());
EXPECT_FALSE(watcher.nameChanged());
EXPECT_TRUE(watcher.relationshipChanged());
watcher.clearState();
EXPECT_FALSE(watcher.dirty());
EXPECT_FALSE(watcher.dataChanged());
EXPECT_FALSE(watcher.nameChanged());
EXPECT_FALSE(watcher.relationshipChanged());
oZone->remove();
EXPECT_TRUE(watcher.dirty());
EXPECT_FALSE(watcher.dataChanged());
EXPECT_FALSE(watcher.nameChanged());
EXPECT_TRUE(watcher.relationshipChanged());
}
示例2: scratch
TEST_F(IdfFixture, WorkspaceObject_FieldSettingWithHiddenPushes) {
Workspace scratch(StrictnessLevel::None,IddFileType::EnergyPlus); // Strictness level None
std::stringstream text;
text << "ZoneHVAC:HighTemperatureRadiant," << std::endl
<< " MyRadiantSystem," << std::endl
<< " MyHVACSchedule," << std::endl
<< " MyCoreZone," << std::endl
<< " HeatingDesignCapacity," << std::endl
<< " Autosize," << std::endl
<< " ," << std::endl
<< " ," << std::endl
<< " Electricity;";
OptionalIdfObject oObj = IdfObject::load(text.str());
ASSERT_TRUE(oObj);
IdfObject idfObject = *oObj;
OptionalWorkspaceObject w1 = scratch.addObject(idfObject);
ASSERT_TRUE(w1);
OptionalWorkspaceObject tObject = scratch.getObject(w1->handle ());
ASSERT_TRUE(tObject);
WorkspaceObject object = *tObject;
EXPECT_EQ(static_cast<unsigned>(8),object.numFields());
// create schedule object to point to from non-extensible field
text.str("");
text << "Schedule:Compact," << std::endl
<< " AlwaysOn," << std::endl
<< " ," << std::endl
<< " For: AllOtherDays," << std::endl
<< " Until: 24:00," << std::endl
<< " 1.0;";
oObj = IdfObject::load(text.str());
ASSERT_TRUE(oObj);
idfObject = *oObj;
ASSERT_TRUE(idfObject.iddObject().type() == IddObjectType::Schedule_Compact);
OptionalWorkspaceObject w2 = scratch.addObject(idfObject);
ASSERT_TRUE(w2);
EXPECT_TRUE(object.setPointer(14,w2->handle ()));
EXPECT_EQ(15u,object.numFields());
tObject = object.getTarget(14);
ASSERT_TRUE(tObject);
EXPECT_TRUE(tObject->handle() == w2->handle());
// hidden pushing for setting extensible string pointer
EXPECT_TRUE(object.setString(16,*(tObject->name()))); // should only work at strictness none
tObject = object.getTarget(16);
ASSERT_TRUE(tObject);
EXPECT_TRUE(tObject->handle() == w2->handle());
EXPECT_EQ(18u,object.numFields());
// hidden pushing for setting extensible double
EXPECT_TRUE(object.setDouble(19,0.5));
EXPECT_EQ(20u,object.numFields());
OptionalDouble dValue = object.getDouble(19);
ASSERT_TRUE(dValue);
EXPECT_NEAR(0.5,*dValue,tol);
// SHOULD NOT BE VALID
scratch = Workspace(StrictnessLevel::Draft, IddFileType::EnergyPlus); // Non-null data must be valid
text.str("");
text << "ZoneHVAC:HighTemperatureRadiant," << std::endl
<< " MyRadiantSystem," << std::endl
<< " MyHVACSchedule," << std::endl
<< " MyCoreZone," << std::endl
<< " HeatingDesignCapacity," << std::endl
<< " Autosize," << std::endl
<< " ," << std::endl
<< " ," << std::endl
<< " Electricity;";
oObj = IdfObject::load(text.str());
ASSERT_TRUE(oObj);
idfObject = *oObj;
w2 = scratch.addObject(idfObject);
ASSERT_TRUE(w2);
tObject = scratch.getObject(w2->handle());
ASSERT_TRUE(tObject);
object = *tObject;
// hidden pushing for setting nonextensible double
EXPECT_FALSE(object.setDouble(9,1.5));
EXPECT_EQ(8u,object.numFields());
EXPECT_TRUE(object.setDouble(9,0.6));
EXPECT_EQ(10u,object.numFields());
// hidden pushing for setting nonextensible string
EXPECT_FALSE(object.setString(12,"bad key"));
EXPECT_EQ(10u,object.numFields());
EXPECT_TRUE(object.setString(12,"MeanAirTemperature"));
EXPECT_EQ(13u,object.numFields());
// hidden pushing for setting nonextensible pointer
EXPECT_TRUE(object.setString(14,""));
EXPECT_EQ(15u,object.numFields());
// hidden pushing for setting extensible string pointer
EXPECT_FALSE(object.setString(16,"MySurface"));
EXPECT_EQ(15u,object.numFields());
EXPECT_TRUE(object.setString(16,""));
EXPECT_EQ(18u,object.numFields());
//.........这里部分代码省略.........