void NamePrefixTable::removeEntry(const ndn::Name& name, const ndn::Name& destRouter) { _LOG_DEBUG("Removing origin: " << destRouter << " from " << name); RoutingTableEntry* rteCheck = m_nlsr.getRoutingTable().findRoutingTableEntry(destRouter); if (rteCheck != nullptr) { removeEntry(name, *rteCheck); } else { RoutingTableEntry rte(destRouter); removeEntry(name, rte); } }
void NamePrefixTable::updateWithNewRoute() { _LOG_DEBUG("Updating table with newly calculated routes"); // Update each name prefix entry in the Name Prefix Table with newly calculated next hops for (const NamePrefixTableEntry& prefixEntry : m_table) { for (const RoutingTableEntry& routingEntry : prefixEntry.getRteList()) { _LOG_TRACE("Updating next hops to origin: " << routingEntry.getDestination() << " for prefix: " << prefixEntry); RoutingTableEntry* rteCheck = m_nlsr.getRoutingTable().findRoutingTableEntry(routingEntry.getDestination()); if (rteCheck != nullptr) { addEntry(prefixEntry.getNamePrefix(), *rteCheck); } else { RoutingTableEntry rte(routingEntry.getDestination()); addEntry(prefixEntry.getNamePrefix(), rte); } } } }
CameraPtr Camera::init() { // Create a transform to contain the location and orientation of the camera. mTransform = OSG::Transform::create(); OSG::NodePtr beacon = OSG::Node::create(); #if OSG_MAJOR_VERSION < 2 OSG::CPEditor be(beacon, OSG::Node::CoreFieldMask); #endif beacon->setCore(mTransform); mLeftTexture = tex_chunk_t::create(); #if OSG_MAJOR_VERSION < 2 OSG::CPEditor lte(mLeftTexture); mLeftTexture->setEnvMode(GL_MODULATE); #else mLeftTexEnv = OSG::TextureEnvChunk::create(); mLeftTexEnv->setEnvMode(GL_MODULATE); #endif mRightTexture = tex_chunk_t::create(); #if OSG_MAJOR_VERSION < 2 OSG::CPEditor rte(mRightTexture); mRightTexture->setEnvMode(GL_MODULATE); #else mRightTexEnv = OSG::TextureEnvChunk::create(); mRightTexEnv->setEnvMode(GL_MODULATE); #endif mCurrentTexture = mLeftTexture; #if OSG_MAJOR_VERSION >= 2 mCurrentTexEnv = mLeftTexEnv; #endif // setup camera mCamera = OSG::PerspectiveCamera::create(); #if OSG_MAJOR_VERSION < 2 OSG::CPEditor ce(mCamera); #endif mCamera->setFov( #if OSG_MAJOR_VERSION < 2 OSG::osgdegree2rad(60.0) #else OSG::osgDegree2Rad(60.0) #endif ); mCamera->setNear(0.01); mCamera->setFar(10000); mCamera->setBeacon(beacon); mLeftImage = OSG::Image::create(); mRightImage = OSG::Image::create(); OSG::ImagePtr img; // Set up FBO textures. img = mLeftImage; mLeftTexture->setMinFilter(GL_LINEAR); mLeftTexture->setMagFilter(GL_LINEAR); mLeftTexture->setTarget(GL_TEXTURE_2D); mLeftTexture->setInternalFormat(GL_RGBA8); mLeftTexture->setImage(img); img = mRightImage; mRightTexture->setMinFilter(GL_LINEAR); mRightTexture->setMagFilter(GL_LINEAR); mRightTexture->setTarget(GL_TEXTURE_2D); mRightTexture->setInternalFormat(GL_RGBA8); mRightTexture->setImage(img); mCurrentImage = mLeftImage; return shared_from_this(); }