本文整理汇总了C++中OutputData::owner方法的典型用法代码示例。如果您正苦于以下问题:C++ OutputData::owner方法的具体用法?C++ OutputData::owner怎么用?C++ OutputData::owner使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OutputData
的用法示例。
在下文中一共展示了OutputData::owner方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
ArrowModel::ArrowModel(ApplicationWindow* parentWnd,
Glib::RefPtr<PortModel> src, Glib::RefPtr<PortModel> dest,
Connection* con, ApplicationModel* appModel, bool nullArw): PolylineModel(0,0,0,0), connection(NULL, NULL)
{
parentWindow = parentWnd;
source = src;
destination = dest;
selected = false;
bExist = false;
bNullArrow = nullArw;
applicationModel = appModel;
bNested = (applicationModel != NULL);
if(appModel)
application = appModel->getApplication();
else
application = parentWindow->manager.getKnowledgeBase()->getApplication();
if(con)
{
strLabel = con->carrier();
connection = *con;
}
this->property_close_path().set_value(false);
this->property_line_width().set_value(ARROW_LINEWIDTH);
this->property_arrow_width().set_value(5.0);
if(!bNullArrow)
this->property_end_arrow().set_value(true);
if(bNested)
{
defaultColor = "#555555";
//GooCanvasLineDash *dash = goo_canvas_line_dash_new (ARROW_LINEWIDTH, 3.0, 3.0);
//g_object_set(this->gobj(), "line-dash", dash, NULL);
}
else
defaultColor = "black";
source->addSourceArrow(this);
destination->addDestinationArrow(this);
if(!bNullArrow)
{
string strCarrier = strLabel;
string dummyLabel;
//Adding connection
if(application)
{
string strFrom, strTo;
Glib::RefPtr<InternalPortModel> intPort;
Glib::RefPtr<ExternalPortModel> extPort;
Glib::RefPtr<PortArbitratorModel> arbPort;
Module* module;
InputData* input = NULL;
OutputData* output = NULL;
bool bExternFrom = false;
bool bExternTo = false;
// port arbitrator at the destination
arbPort = Glib::RefPtr<PortArbitratorModel>::cast_dynamic(destination);
// source
intPort = Glib::RefPtr<InternalPortModel>::cast_dynamic(source);
if(intPort)
{
output = intPort->getOutput();
module = (Module*) output->owner();
strFrom = string(module->getPrefix()) + string(intPort->getOutput()->getPort());
dummyLabel = string(intPort->getOutput()->getPort());
if(!strCarrier.size())
{
strCarrier = intPort->getOutput()->getCarrier();
if(arbPort)
strCarrier += "+recv.priority";
}
}
else
{
extPort = Glib::RefPtr<ExternalPortModel>::cast_dynamic(source);
strFrom = extPort->getPort();
dummyLabel = string(extPort->getPort());
if(!strCarrier.size() && arbPort)
strCarrier = "udp+recv.priority";
bExternFrom = true;
}
// destination
intPort = Glib::RefPtr<InternalPortModel>::cast_dynamic(destination);
if(intPort)
{
input = intPort->getInput();
module = (Module*) input->owner();
strTo = string(module->getPrefix()) + string(intPort->getInput()->getPort());
dummyLabel += string(" -> ") + string(intPort->getInput()->getPort()) + string(" ");
if(!strCarrier.size())
{
strCarrier = intPort->getInput()->getCarrier();
if(arbPort)
strCarrier += "+recv.priority";
}
}
else if(arbPort)
//.........这里部分代码省略.........