本文整理汇总了C++中Address::getName方法的典型用法代码示例。如果您正苦于以下问题:C++ Address::getName方法的具体用法?C++ Address::getName怎么用?C++ Address::getName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Address
的用法示例。
在下文中一共展示了Address::getName方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: EmitLoadOfLValue
/// EmitLoadOfLValue - Given an RValue reference for a complex, emit code to
/// load the real and imaginary pieces, returning them as Real/Imag.
ComplexPairTy ComplexExprEmitter::EmitLoadOfLValue(LValue lvalue,
SourceLocation loc) {
assert(lvalue.isSimple() && "non-simple complex l-value?");
if (lvalue.getType()->isAtomicType())
return CGF.EmitAtomicLoad(lvalue, loc).getComplexVal();
Address SrcPtr = lvalue.getAddress();
bool isVolatile = lvalue.isVolatileQualified();
llvm::Value *Real = nullptr, *Imag = nullptr;
if (!IgnoreReal || isVolatile) {
Address RealP = CGF.emitAddrOfRealComponent(SrcPtr, lvalue.getType());
Real = Builder.CreateLoad(RealP, isVolatile, SrcPtr.getName() + ".real");
}
if (!IgnoreImag || isVolatile) {
Address ImagP = CGF.emitAddrOfImagComponent(SrcPtr, lvalue.getType());
Imag = Builder.CreateLoad(ImagP, isVolatile, SrcPtr.getName() + ".imag");
}
return ComplexPairTy(Real, Imag);
}
示例2:
string RoutingCompiler_iosacl::PrintRule::_printRGtw(RoutingRule *rule)
{
FWObject *ref;
RuleElementRGtw *gtwrel = rule->getRGtw();
ref = gtwrel->front();
Address *gtw = Address::cast(FWReference::cast(ref)->getPointer());
if (Interface::isA(gtw) && gtw->isChildOf(compiler->fw))
{
// gateway is interface of this firewall. Generate command
// ip route A.B.C.D N.N.N.N interface metric
return gtw->getName() + " ";
}
string gateway = _printAddr(gtw);
if (gateway != "default ") return gateway;
else return " ";
}
示例3: open
bool Port::open(const Contact& contact, bool registerName,
const char *fakeName) {
Contact contact2 = contact;
if (!NetworkBase::initialized()) {
YARP_ERROR(Logger::get(), "YARP not initialized; create a yarp::os::Network object before using ports");
return false;
}
ConstString n = contact2.getName();
if (n!="..." && n!="" && n[0]!='/') {
if (fakeName==NULL) {
YARP_SPRINTF1(Logger::get(),error,
"Port name '%s' needs to start with a '/' character",
n.c_str());
return false;
}
}
if (n!="..." && n!="") {
if (fakeName==NULL) {
ConstString prefix = NetworkBase::getEnvironment("YARP_PORT_PREFIX");
if (prefix!="") {
n = prefix + n;
contact2 = contact2.addName(n);
}
}
}
// Allow for open() to be called safely many times on the same Port
PortCoreAdapter *currentCore = &(HELPER(implementation));
if (currentCore->isOpened()) {
PortCoreAdapter *newCore = new PortCoreAdapter(*this);
YARP_ASSERT(newCore!=NULL);
// copy state that should survive in a new open()
if (currentCore->checkPortReader()!=NULL) {
newCore->configReader(*(currentCore->checkPortReader()));
}
if (currentCore->checkReadCreator()!=NULL) {
newCore->configReadCreator(*(currentCore->checkReadCreator()));
}
if (currentCore->checkWaitAfterSend()>=0) {
newCore->configWaitAfterSend(currentCore->checkWaitAfterSend());
}
close();
delete ((PortCoreAdapter*)implementation);
implementation = newCore;
}
PortCoreAdapter& core = HELPER(implementation);
core.openable();
bool local = false;
if (NetworkBase::localNetworkAllocation()&&contact2.getPort()<=0) {
YARP_DEBUG(Logger::get(),"local network allocation needed");
local = true;
}
bool success = true;
Address caddress(contact2.getHost().c_str(),
contact2.getPort(),
contact2.getCarrier().c_str(),
contact2.getName().c_str());
Address address = caddress;
core.setReadHandler(core);
if (contact2.getPort()>0 && contact2.getHost()!="") {
registerName = false;
}
if (registerName&&!local) {
Contact contactFull = NetworkBase::registerContact(contact2);
address = Address::fromContact(contactFull);
}
core.setControlRegistration(registerName);
success = (address.isValid()||local)&&(fakeName==NULL);
ConstString blame = "invalid address";
if (success) {
success = core.listen(address,registerName);
blame = "address conflict";
if (success) {
success = core.start();
blame = "manager did not start";
}
}
if (success) {
address = core.getAddress();
if (registerName&&local) {
contact2 = contact2.addSocket(address.getCarrierName().c_str(),
address.getName().c_str(),
address.getPort());
contact2 = contact2.addName(address.getRegName().c_str());
Contact newName = NetworkBase::registerContact(contact2);
core.resetPortName(newName.getName());
address = core.getAddress();
}
if (core.getVerbosity()>=1) {
YARP_INFO(Logger::get(),
//.........这里部分代码省略.........
示例4: blk
bool yarp::os::impl::HttpCarrier::expectSenderSpecifier(Protocol& proto) {
proto.setRoute(proto.getRoute().addFromName("web"));
String remainder = NetType::readLine(proto.is());
if (!urlDone) {
for (unsigned int i=0; i<remainder.length(); i++) {
if (remainder[i]!=' ') {
url += remainder[i];
} else {
break;
}
}
}
bool done = false;
expectPost = false;
contentLength = 0;
while (!done) {
String result = NetType::readLine(proto.is());
if (result == "") {
done = true;
} else {
//printf(">>> %s\n", result.c_str());
Bottle b;
b.fromString(result.c_str());
if (b.get(0).asString()=="Content-Length:") {
//printf("]]] got length %d\n", b.get(1).asInt());
contentLength = b.get(1).asInt();
}
if (b.get(0).asString()=="Content-Type:") {
//printf("]]] got type %s\n", b.get(1).asString());
if (b.get(1).asString()=="application/x-www-form-urlencoded") {
expectPost = true;
}
}
}
}
if (expectPost) {
//printf("[[[this is a post message of length %d]]]\n", contentLength);
ManagedBytes blk(contentLength+1);
Bytes start(blk.get(),contentLength);
NetType::readFull(proto.is(),start);
blk.get()[contentLength] = '\0';
//printf("message: %s\n", blk.get());
input = blk.get();
} else {
//printf("message: %s\n", url.c_str());
input = url;
}
prop.fromQuery(input.c_str());
prop.put("REQUEST_URI",url.c_str());
//printf("Property %s\n",prop.toString().c_str());
Contact chome = NetworkBase::getNameServerContact();
Address home = Address::fromContact(chome);
Address me = proto.getStreams().getLocalAddress();
String from = "<html><head><link href=\"http://";
from += home.getName();
from += ":";
from += NetType::toString(home.getPort());
from += "/web/main.css\" rel=\"stylesheet\" type=\"text/css\"/></head><body bgcolor='#ffffcc'><h1>yarp port ";
from += proto.getRoute().getToName();
from += "</h1>\n";
from += "<p>(<a href=\"http://";
from += home.getName();
from += ":";
from += NetType::toString(home.getPort());
from += "/data=list\">All ports</a>) \n";
from += "(<a href=\"http://";
from += me.getName();
from += ":";
from += NetType::toString(me.getPort());
from += "/\">connections</a>) \n";
from += "(<a href=\"http://";
from += me.getName();
from += ":";
from += NetType::toString(me.getPort());
from += "/data=help\">help</a>) \n";
from += "(<a href=\"http://";
from += me.getName();
from += ":";
from += NetType::toString(me.getPort());
from += "/r\">read</a>) \n";
from += "</p>\n";
from += "<p>\n";
from += "<form method=\"post\" action=\"http://";
from += me.getName();
from += ":";
from += NetType::toString(me.getPort());
from += "/form\">";
prefix = from;
//.........这里部分代码省略.........
示例5: tmp
void yarp::os::impl::HttpTwoWayStream::apply(char ch) {
if (ch=='\r') { return; }
if (ch == '\n') {
proc = "";
Address addr = yarp::os::impl::NameClient::extractAddress(part);
if (addr.isValid()) {
if (addr.getCarrierName()=="tcp"&&
(YARP_STRSTR(addr.getRegName(),"/quit")==String::npos)) {
proc += "<a href=\"http://";
proc += addr.getName();
proc += ":";
proc += NetType::toString(addr.getPort());
proc += "\">";
proc += addr.getRegName();
proc += "</A> ";
size_t len = addr.getRegName().length();
size_t target = 30;
if (len<target) {
for (size_t i=0; i<target-len; i++) {
proc += " ";
}
}
proc += "(";
proc += addr.toString().c_str();
proc += ")";
proc += "\n";
} else {
// Don't show non tcp connections
//proc += part;
//proc += "\n";
}
} else {
if ((part[0]=='\"'&&part[1]=='[')||(part[0]=='+')) {
// translate this to a form
if (part[0]=='+') { part[0] = ' '; }
String org = part;
part = "<p><form method=post action='/form'>";
size_t i=0;
for (i=0; i<org.length(); i++) {
if (org[i]=='"') {
org[i] = ' ';
}
}
part += "<input type=hidden name=data value=\"";
part += org;
part += "\">";
part += org;
org += " ";
bool arg = false;
String var = "";
for (i=0; i<org.length(); i++) {
char ch = org[i];
if (arg) {
if ((ch>='A'&&ch<='Z')||
(ch>='a'&&ch<='z')||
(ch>='0'&&ch<='9')||
(ch=='_')) {
var += ch;
} else {
arg = false;
part += "\n ";
part += var;
part += " ";
part += "<input type=text name=";
part += var;
part += " size=5 value=\"\">";
var = "";
}
}
if (ch=='$') {
arg = true;
}
}
part += "<input type=submit value=\"go\">";
part += "</form></p>";
}
proc += part;
proc += "\n";
}
if (data||!filterData) {
Bytes tmp((char*)proc.c_str(),proc.length());
delegate->getOutputStream().write(tmp);
delegate->getOutputStream().flush();
}
data = false;
if (proc[0] == 'd' || proc[0] == 'D') {
data = true;
}
part = "";
} else {
part += ch;
}
}
示例6: emitAddrOfImagComponent
Address CodeGenFunction::emitAddrOfImagComponent(Address addr,
QualType complexType) {
QualType eltType = complexType->castAs<ComplexType>()->getElementType();
CharUnits offset = getContext().getTypeSizeInChars(eltType);
return Builder.CreateStructGEP(addr, 1, offset, addr.getName() + ".imagp");
}
示例7: emitAddrOfRealComponent
Address CodeGenFunction::emitAddrOfRealComponent(Address addr,
QualType complexType) {
CharUnits offset = CharUnits::Zero();
return Builder.CreateStructGEP(addr, 0, offset, addr.getName() + ".realp");
}