original_string: public static function getAllDimensions()
      {
          $cacheId = CacheId::siteAware(CacheId::pluginAware('AllDimensions'));
          $cache   = PiwikCache::getTransientCache();
  
          if (!$cache->contains($cacheId)) {
              $plugins   = PluginManager::getInstance()->getPluginsLoadedAndActivated();
              $instances = array();
  
              /**
               * Triggered to add new dimensions that cannot be picked up automatically by the platform.
               * This is useful if the plugin allows a user to create reports / dimensions dynamically. For example
               * CustomDimensions or CustomVariables. There are a variable number of dimensions in this case and it
               * wouldn't be really possible to create a report file for one of these dimensions as it is not known
               * how many Custom Dimensions will exist.
               *
               * **Example**
               *
               *     public function addDimension(&$dimensions)
               *     {
               *         $dimensions[] = new MyCustomDimension();
               *     }
               *
               * @param Dimension[] $reports An array of dimensions
               */
              Piwik::postEvent('Dimension.addDimensions', array(&$instances));
  
              foreach ($plugins as $plugin) {
                  foreach (self::getDimensions($plugin) as $instance) {
                      $instances[] = $instance;
                  }
              }
  
              /**
               * Triggered to filter / restrict dimensions.
               *
               * **Example**
               *
               *     public function filterDimensions(&$dimensions)
               *     {
               *         foreach ($dimensions as $index => $dimension) {
               *              if ($dimension->getName() === 'Page URL') {}
               *                  unset($dimensions[$index]); // remove this dimension
               *              }
               *         }
               *     }
               *
               * @param Dimension[] $dimensions An array of dimensions
               */
              Piwik::postEvent('Dimension.filterDimensions', array(&$instances));
  
              $cache->save($cacheId, $instances);
          }
  
          return $cache->fetch($cacheId);
      }
code: public static function getAllDimensions()
      {
          $cacheId = CacheId::siteAware(CacheId::pluginAware('AllDimensions'));
          $cache   = PiwikCache::getTransientCache();
  
          if (!$cache->contains($cacheId)) {
              $plugins   = PluginManager::getInstance()->getPluginsLoadedAndActivated();
              $instances = array();
  
              /**
               * Triggered to add new dimensions that cannot be picked up automatically by the platform.
               * This is useful if the plugin allows a user to create reports / dimensions dynamically. For example
               * CustomDimensions or CustomVariables. There are a variable number of dimensions in this case and it
               * wouldn't be really possible to create a report file for one of these dimensions as it is not known
               * how many Custom Dimensions will exist.
               *
               * **Example**
               *
               *     public function addDimension(&$dimensions)
               *     {
               *         $dimensions[] = new MyCustomDimension();
               *     }
               *
               * @param Dimension[] $reports An array of dimensions
               */
              Piwik::postEvent('Dimension.addDimensions', array(&$instances));
  
              foreach ($plugins as $plugin) {
                  foreach (self::getDimensions($plugin) as $instance) {
                      $instances[] = $instance;
                  }
              }
  
              /**
               * Triggered to filter / restrict dimensions.
               *
               * **Example**
               *
               *     public function filterDimensions(&$dimensions)
               *     {
               *         foreach ($dimensions as $index => $dimension) {
               *              if ($dimension->getName() === 'Page URL') {}
               *                  unset($dimensions[$index]); // remove this dimension
               *              }
               *         }
               *     }
               *
               * @param Dimension[] $dimensions An array of dimensions
               */
              Piwik::postEvent('Dimension.filterDimensions', array(&$instances));
  
              $cache->save($cacheId, $instances);
          }
  
          return $cache->fetch($cacheId);
      }
code_tokens: public static function getAllDimensions ( ) { $ cacheId = CacheId :: siteAware ( CacheId :: pluginAware ( 'AllDimensions' ) ) ; $ cache = PiwikCache :: getTransientCache ( ) ; if ( ! $ cache -> contains ( $ cacheId ) ) { $ plugins = PluginManager :: getInstance ( ) -> getPluginsLoadedAndActivated ( ) ; $ instances = array ( ) ; /**
               * Triggered to add new dimensions that cannot be picked up automatically by the platform.
               * This is useful if the plugin allows a user to create reports / dimensions dynamically. For example
               * CustomDimensions or CustomVariables. There are a variable number of dimensions in this case and it
               * wouldn't be really possible to create a report file for one of these dimensions as it is not known
               * how many Custom Dimensions will exist.
               *
               * **Example**
               *
               *     public function addDimension(&$dimensions)
               *     {
               *         $dimensions[] = new MyCustomDimension();
               *     }
               *
               * @param Dimension[] $reports An array of dimensions
               */ Piwik :: postEvent ( 'Dimension.addDimensions' , array ( & $ instances ) ) ; foreach ( $ plugins as $ plugin ) { foreach ( self :: getDimensions ( $ plugin ) as $ instance ) { $ instances [ ] = $ instance ; } } /**
               * Triggered to filter / restrict dimensions.
               *
               * **Example**
               *
               *     public function filterDimensions(&$dimensions)
               *     {
               *         foreach ($dimensions as $index => $dimension) {
               *              if ($dimension->getName() === 'Page URL') {}
               *                  unset($dimensions[$index]); // remove this dimension
               *              }
               *         }
               *     }
               *
               * @param Dimension[] $dimensions An array of dimensions
               */ Piwik :: postEvent ( 'Dimension.filterDimensions' , array ( & $ instances ) ) ; $ cache -> save ( $ cacheId , $ instances ) ; } return $ cache -> fetch ( $ cacheId ) ; }
docstring: Gets an instance of all available visit, action and conversion dimension.
  @return Dimension[]
docstring_tokens: Gets an instance of all available visit action and conversion dimension .