MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / sendSelf

Method sendSelf

DEVELOPER/core/Node.cpp:1493–1595  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1491
1492
1493int
1494Node::sendSelf(int cTag, Channel &theChannel)
1495{
1496 int dataTag = this->getDbTag();
1497
1498 ID data(14);
1499 data(0) = this->getTag();
1500 data(1) = numberDOF;
1501
1502 // indicate whether vector quantaties have been formed
1503 if (disp == 0) data(2) = 1; else data(2) = 0;
1504 if (vel == 0) data(3) = 1; else data(3) = 0;
1505 if (accel == 0) data(4) = 1; else data(4) = 0;
1506 if (mass == 0) data(5) = 1; else data(5) = 0;
1507 if (unbalLoad == 0) data(6) = 1; else data(6) = 0;
1508 if (R == 0)
1509 data(12) = 1;
1510 else {
1511 data(12) = 0;
1512 data(13) = R->noCols();
1513 }
1514
1515 data(7) = Crd->Size();
1516
1517 if (dbTag1 == 0)
1518 dbTag1 = theChannel.getDbTag();
1519 if (dbTag2 == 0)
1520 dbTag2 = theChannel.getDbTag();
1521 if (dbTag3 == 0)
1522 dbTag3 = theChannel.getDbTag();
1523 if (dbTag4 == 0)
1524 dbTag4 = theChannel.getDbTag();
1525
1526 data(8) = dbTag1;
1527 data(9) = dbTag2;
1528 data(10) = dbTag3;
1529 data(11) = dbTag4;
1530
1531 int res = 0;
1532
1533 res = theChannel.sendID(dataTag, cTag, data);
1534 if (res < 0) {
1535 opserr << " Node::sendSelf() - failed to send ID data\n";
1536 return res;
1537 }
1538
1539 res = theChannel.sendVector(dataTag, cTag, *Crd);
1540 if (res < 0) {
1541 opserr << " Node::sendSelf() - failed to send Vecor data\n";
1542 return res;
1543 }
1544
1545 if (commitDisp != 0) {
1546 res = theChannel.sendVector(dbTag1, cTag, *commitDisp);
1547 if (res < 0) {
1548 opserr << " Node::sendSelf() - failed to send Disp data\n";
1549 return res;
1550 }

Callers 2

sendObjMethod · 0.45
commitStateMethod · 0.45

Calls 7

getDbTagMethod · 0.45
getTagMethod · 0.45
noColsMethod · 0.45
SizeMethod · 0.45
sendIDMethod · 0.45
sendVectorMethod · 0.45
sendMatrixMethod · 0.45

Tested by

no test coverage detected