mirror of
https://github.com/overte-org/overte.git
synced 2025-04-16 23:26:25 +02:00
NodeData cleanup thanks to separation from rendered avatars
This commit is contained in:
parent
09cd8eb0fd
commit
349c790cc7
9 changed files with 3 additions and 29 deletions
|
@ -532,7 +532,7 @@ void DomainServer::addReleasedAssignmentBackToQueue(Assignment* releasedAssignme
|
|||
void DomainServer::nodeKilled(SharedNodePointer node) {
|
||||
// if this node has linked data it was from an assignment
|
||||
if (node->getLinkedData()) {
|
||||
Assignment* nodeAssignment = (Assignment*) node->getLinkedData();
|
||||
Assignment* nodeAssignment = (Assignment*) node->getLinkedData();
|
||||
|
||||
addReleasedAssignmentBackToQueue(nodeAssignment);
|
||||
}
|
||||
|
|
|
@ -92,11 +92,6 @@ Avatar::~Avatar() {
|
|||
_handData = NULL;
|
||||
}
|
||||
|
||||
void Avatar::deleteOrDeleteLater() {
|
||||
this->deleteLater();
|
||||
}
|
||||
|
||||
|
||||
void Avatar::init() {
|
||||
_head.init();
|
||||
_hand.init();
|
||||
|
|
|
@ -72,7 +72,6 @@ public:
|
|||
|
||||
Avatar(Node* owningNode = NULL);
|
||||
~Avatar();
|
||||
void deleteOrDeleteLater();
|
||||
|
||||
void init();
|
||||
void simulate(float deltaTime, Transmitter* transmitter);
|
||||
|
|
|
@ -28,17 +28,6 @@ void OctreeServer::attachQueryNodeToNode(Node* newNode) {
|
|||
}
|
||||
}
|
||||
|
||||
void OctreeServer::nodeKilled(SharedNodePointer node) {
|
||||
// Use this to cleanup our node
|
||||
if (node->getType() == NODE_TYPE_AGENT) {
|
||||
OctreeQueryNode* nodeData = (OctreeQueryNode*)node->getLinkedData();
|
||||
if (nodeData) {
|
||||
node->setLinkedData(NULL);
|
||||
delete nodeData;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
OctreeServer::OctreeServer(const unsigned char* dataBuffer, int numBytes) :
|
||||
ThreadedAssignment(dataBuffer, numBytes),
|
||||
_argc(0),
|
||||
|
@ -573,8 +562,6 @@ void OctreeServer::run() {
|
|||
|
||||
setvbuf(stdout, NULL, _IOLBF, 0);
|
||||
|
||||
// tell our NodeList about our desire to get notifications
|
||||
connect(nodeList, SIGNAL(nodeKilled(SharedNodePointer)), this, SLOT(nodeKilled(SharedNodePointer)));
|
||||
nodeList->linkedDataCreateCallback = &OctreeServer::attachQueryNodeToNode;
|
||||
|
||||
srand((unsigned)time(0));
|
||||
|
|
|
@ -69,8 +69,6 @@ public slots:
|
|||
void run();
|
||||
void processDatagram(const QByteArray& dataByteArray, const HifiSockAddr& senderSockAddr);
|
||||
|
||||
void nodeKilled(SharedNodePointer node);
|
||||
|
||||
protected:
|
||||
void parsePayload();
|
||||
void initHTTPManager(int port);
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
/// within the domain. As with other ReceivedPacketProcessor classes the user is responsible for reading inbound packets
|
||||
/// and adding them to the processing queue by calling queueReceivedPacket()
|
||||
class JurisdictionListener : public ReceivedPacketProcessor {
|
||||
Q_OBJECT
|
||||
public:
|
||||
static const int DEFAULT_PACKETS_PER_SECOND = 1;
|
||||
static const int NO_SERVER_CHECK_RATE = 60; // if no servers yet detected, keep checking at 60fps
|
||||
|
|
|
@ -39,7 +39,7 @@ Node::Node(const QUuid& uuid, char type, const HifiSockAddr& publicSocket, const
|
|||
|
||||
Node::~Node() {
|
||||
if (_linkedData) {
|
||||
_linkedData->deleteOrDeleteLater();
|
||||
delete _linkedData;
|
||||
}
|
||||
|
||||
delete _bytesReceivedMovingAverage;
|
||||
|
|
|
@ -16,8 +16,4 @@ NodeData::NodeData(Node* owningNode) :
|
|||
|
||||
NodeData::~NodeData() {
|
||||
|
||||
}
|
||||
|
||||
void NodeData::deleteOrDeleteLater() {
|
||||
delete this;
|
||||
}
|
|
@ -21,8 +21,6 @@ public:
|
|||
virtual ~NodeData() = 0;
|
||||
virtual int parseData(unsigned char* sourceBuffer, int numBytes) = 0;
|
||||
|
||||
virtual void deleteOrDeleteLater();
|
||||
|
||||
Node* getOwningNode() { return _owningNode; }
|
||||
protected:
|
||||
Node* _owningNode;
|
||||
|
|
Loading…
Reference in a new issue