original_string: public function getAllReports()
      {
          $reports = $this->getAllReportClasses();
          $cacheId = CacheId::siteAware(CacheId::languageAware('Reports' . md5(implode('', $reports))));
          $cache   = PiwikCache::getTransientCache();
  
          if (!$cache->contains($cacheId)) {
              $instances = array();
  
              /**
               * Triggered to add new reports 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 addReport(&$reports)
               *     {
               *         $reports[] = new MyCustomReport();
               *     }
               *
               * @param Report[] $reports An array of reports
               */
              Piwik::postEvent('Report.addReports', array(&$instances));
  
              foreach ($reports as $report) {
                  $instances[] = new $report();
              }
  
              /**
               * Triggered to filter / restrict reports.
               *
               * **Example**
               *
               *     public function filterReports(&$reports)
               *     {
               *         foreach ($reports as $index => $report) {
               *              if ($report->getCategory() === 'Actions') {}
               *                  unset($reports[$index]); // remove all reports having this action
               *              }
               *         }
               *     }
               *
               * @param Report[] $reports An array of reports
               */
              Piwik::postEvent('Report.filterReports', array(&$instances));
  
              @usort($instances, array($this, 'sort'));
  
              $cache->save($cacheId, $instances);
          }
  
          return $cache->fetch($cacheId);
      }
code: public function getAllReports()
      {
          $reports = $this->getAllReportClasses();
          $cacheId = CacheId::siteAware(CacheId::languageAware('Reports' . md5(implode('', $reports))));
          $cache   = PiwikCache::getTransientCache();
  
          if (!$cache->contains($cacheId)) {
              $instances = array();
  
              /**
               * Triggered to add new reports 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 addReport(&$reports)
               *     {
               *         $reports[] = new MyCustomReport();
               *     }
               *
               * @param Report[] $reports An array of reports
               */
              Piwik::postEvent('Report.addReports', array(&$instances));
  
              foreach ($reports as $report) {
                  $instances[] = new $report();
              }
  
              /**
               * Triggered to filter / restrict reports.
               *
               * **Example**
               *
               *     public function filterReports(&$reports)
               *     {
               *         foreach ($reports as $index => $report) {
               *              if ($report->getCategory() === 'Actions') {}
               *                  unset($reports[$index]); // remove all reports having this action
               *              }
               *         }
               *     }
               *
               * @param Report[] $reports An array of reports
               */
              Piwik::postEvent('Report.filterReports', array(&$instances));
  
              @usort($instances, array($this, 'sort'));
  
              $cache->save($cacheId, $instances);
          }
  
          return $cache->fetch($cacheId);
      }
code_tokens: public function getAllReports ( ) { $ reports = $ this -> getAllReportClasses ( ) ; $ cacheId = CacheId :: siteAware ( CacheId :: languageAware ( 'Reports' . md5 ( implode ( '' , $ reports ) ) ) ) ; $ cache = PiwikCache :: getTransientCache ( ) ; if ( ! $ cache -> contains ( $ cacheId ) ) { $ instances = array ( ) ; /**
               * Triggered to add new reports 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 addReport(&$reports)
               *     {
               *         $reports[] = new MyCustomReport();
               *     }
               *
               * @param Report[] $reports An array of reports
               */ Piwik :: postEvent ( 'Report.addReports' , array ( & $ instances ) ) ; foreach ( $ reports as $ report ) { $ instances [ ] = new $ report ( ) ; } /**
               * Triggered to filter / restrict reports.
               *
               * **Example**
               *
               *     public function filterReports(&$reports)
               *     {
               *         foreach ($reports as $index => $report) {
               *              if ($report->getCategory() === 'Actions') {}
               *                  unset($reports[$index]); // remove all reports having this action
               *              }
               *         }
               *     }
               *
               * @param Report[] $reports An array of reports
               */ Piwik :: postEvent ( 'Report.filterReports' , array ( & $ instances ) ) ; @ usort ( $ instances , array ( $ this , 'sort' ) ) ; $ cache -> save ( $ cacheId , $ instances ) ; } return $ cache -> fetch ( $ cacheId ) ; }
docstring: Returns a list of all available reports. Even not enabled reports will be returned. They will be already sorted
  depending on the order and category of the report.
  @return \Piwik\Plugin\Report[]
  @api
docstring_tokens: Returns a list of all available reports . Even not enabled reports will be returned . They will be already sorted depending on the order and category of the report .