NodeData cleanup thanks to separation from rendered avatars

This commit is contained in:
Stephen Birarda 2014-01-23 15:41:40 -08:00
parent 09cd8eb0fd
commit 349c790cc7
9 changed files with 3 additions and 29 deletions

View file

@ -532,7 +532,7 @@ void DomainServer::addReleasedAssignmentBackToQueue(Assignment* releasedAssignme
void DomainServer::nodeKilled(SharedNodePointer node) { void DomainServer::nodeKilled(SharedNodePointer node) {
// if this node has linked data it was from an assignment // if this node has linked data it was from an assignment
if (node->getLinkedData()) { if (node->getLinkedData()) {
Assignment* nodeAssignment = (Assignment*) node->getLinkedData(); Assignment* nodeAssignment = (Assignment*) node->getLinkedData();
addReleasedAssignmentBackToQueue(nodeAssignment); addReleasedAssignmentBackToQueue(nodeAssignment);
} }

View file

@ -92,11 +92,6 @@ Avatar::~Avatar() {
_handData = NULL; _handData = NULL;
} }
void Avatar::deleteOrDeleteLater() {
this->deleteLater();
}
void Avatar::init() { void Avatar::init() {
_head.init(); _head.init();
_hand.init(); _hand.init();

View file

@ -72,7 +72,6 @@ public:
Avatar(Node* owningNode = NULL); Avatar(Node* owningNode = NULL);
~Avatar(); ~Avatar();
void deleteOrDeleteLater();
void init(); void init();
void simulate(float deltaTime, Transmitter* transmitter); void simulate(float deltaTime, Transmitter* transmitter);

View file

@ -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) : OctreeServer::OctreeServer(const unsigned char* dataBuffer, int numBytes) :
ThreadedAssignment(dataBuffer, numBytes), ThreadedAssignment(dataBuffer, numBytes),
_argc(0), _argc(0),
@ -573,8 +562,6 @@ void OctreeServer::run() {
setvbuf(stdout, NULL, _IOLBF, 0); 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; nodeList->linkedDataCreateCallback = &OctreeServer::attachQueryNodeToNode;
srand((unsigned)time(0)); srand((unsigned)time(0));

View file

@ -69,8 +69,6 @@ public slots:
void run(); void run();
void processDatagram(const QByteArray& dataByteArray, const HifiSockAddr& senderSockAddr); void processDatagram(const QByteArray& dataByteArray, const HifiSockAddr& senderSockAddr);
void nodeKilled(SharedNodePointer node);
protected: protected:
void parsePayload(); void parsePayload();
void initHTTPManager(int port); void initHTTPManager(int port);

View file

@ -23,6 +23,7 @@
/// within the domain. As with other ReceivedPacketProcessor classes the user is responsible for reading inbound packets /// 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() /// and adding them to the processing queue by calling queueReceivedPacket()
class JurisdictionListener : public ReceivedPacketProcessor { class JurisdictionListener : public ReceivedPacketProcessor {
Q_OBJECT
public: public:
static const int DEFAULT_PACKETS_PER_SECOND = 1; 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 static const int NO_SERVER_CHECK_RATE = 60; // if no servers yet detected, keep checking at 60fps

View file

@ -39,7 +39,7 @@ Node::Node(const QUuid& uuid, char type, const HifiSockAddr& publicSocket, const
Node::~Node() { Node::~Node() {
if (_linkedData) { if (_linkedData) {
_linkedData->deleteOrDeleteLater(); delete _linkedData;
} }
delete _bytesReceivedMovingAverage; delete _bytesReceivedMovingAverage;

View file

@ -16,8 +16,4 @@ NodeData::NodeData(Node* owningNode) :
NodeData::~NodeData() { NodeData::~NodeData() {
}
void NodeData::deleteOrDeleteLater() {
delete this;
} }

View file

@ -21,8 +21,6 @@ public:
virtual ~NodeData() = 0; virtual ~NodeData() = 0;
virtual int parseData(unsigned char* sourceBuffer, int numBytes) = 0; virtual int parseData(unsigned char* sourceBuffer, int numBytes) = 0;
virtual void deleteOrDeleteLater();
Node* getOwningNode() { return _owningNode; } Node* getOwningNode() { return _owningNode; }
protected: protected:
Node* _owningNode; Node* _owningNode;