Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
May 25, 2015, 2:14:16 PM (10 years ago)
Author:
landauf
Message:

made NetworkFunctionManager a singleton, no static functions anymore (except for getInstance)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/core7/src/libraries/network/NetworkFunctionManager.cc

    r10471 r10474  
    3232namespace orxonox
    3333{
    34     std::map<NetworkFunctionPointer, NetworkFunctionBase*> NetworkFunctionManager::functorMap_;
    35     std::map<uint32_t, NetworkFunctionBase*> NetworkFunctionManager::idMap_;
    36 
    3734    /* static */NetworkFunctionManager& NetworkFunctionManager::getInstance()
    3835    {
     
    4138    }
    4239
    43     /*static*/void NetworkFunctionManager::setNetworkID(const std::string& name, uint32_t id)
     40    void NetworkFunctionManager::setNetworkID(const std::string& name, uint32_t id)
    4441    {
    45         std::map<std::string, NetworkFunctionBase*>& map = NetworkFunctionManager::getNameMap();
     42        std::map<std::string, NetworkFunctionBase*>& map = this->nameMap_;
    4643        assert( map.find(name)!=map.end() );
    4744        map[name]->setNetworkID(id);
    4845    }
    4946
    50     /*static*/void NetworkFunctionManager::destroyAllNetworkFunctions()
     47    void NetworkFunctionManager::destroyAllNetworkFunctions()
    5148    {
    52         std::map<std::string, NetworkFunctionBase*>& map = NetworkFunctionManager::getNameMap();
     49        std::map<std::string, NetworkFunctionBase*>& map = this->nameMap_;
    5350        std::map<std::string, NetworkFunctionBase*>::iterator it;
    5451        for (it = map.begin(); it != map.end(); ++it)
     
    5653    }
    5754
    58     /*static*/std::map<std::string, NetworkFunctionBase*>& NetworkFunctionManager::getNameMap()
    59     {
    60         static std::map<std::string, NetworkFunctionBase*> nameMap_;
    61         return nameMap_;
    62     }
    63 
    64     /*static*/NetworkFunctionBase* NetworkFunctionManager::getFunction(const NetworkFunctionPointer& p)
     55    NetworkFunctionBase* NetworkFunctionManager::getFunction(const NetworkFunctionPointer& p)
    6556    {
    6657        std::map<NetworkFunctionPointer, NetworkFunctionBase*>::iterator it = functorMap_.find(p);
     
    6960    }
    7061
    71     /*static*/NetworkFunctionBase* NetworkFunctionManager::getFunction(uint32_t id)
     62    NetworkFunctionBase* NetworkFunctionManager::getFunction(uint32_t id)
    7263    {
    7364        std::map<uint32_t, NetworkFunctionBase*>::iterator it = idMap_.find(id);
Note: See TracChangeset for help on using the changeset viewer.