Features
Public Member Functions | List of all members
features::feature_location_differences_t Class Reference

#include <features.hpp>

Inheritance diagram for features::feature_location_differences_t:
Inheritance graph
[legend]
Collaboration diagram for features::feature_location_differences_t:
Collaboration graph
[legend]

Public Member Functions

 feature_location_differences_t (feature_id_t n_, feature_id_t m_)
 
std::set< std::string > system2features (std::string s) const
 
systems_difference_t generate_difference (maxnat_t s) const
 
std::set< std::string > evaluate_intersections (const systems_difference_t &diff) const
 
std::set< std::string > evaluate_unions (const systems_difference_t &diff) const
 
std::set< std::string > evaluate_difference (const systems_difference_t &diff) const
 
differences_t generate_non_empty_differences () const
 
differences_t non_empty_differences () const
 
void print_results (std::ostream &os=std::cout) const
 
- Public Member Functions inherited from features::feature_location_isolation_t
 feature_location_isolation_t (feature_id_t n_, feature_id_t m_)
 
feature_names_t generate_independent_features () const
 
feature_names_t generate_or_features () const
 
feature_names_t generate_and_features () const
 
feature_names_t generate_not_features () const
 
feature_names_t generate_or_not_features () const
 
feature_names_t generate_and_not_features () const
 
const feature_names_tindependent_features () const
 
const std::vector< std::string > & or_features () const
 
const std::vector< std::string > & and_features () const
 
const std::vector< std::string > & not_features () const
 
const std::vector< std::string > & or_not_features () const
 
const std::vector< std::string > & and_not_features () const
 
const std::vector< std::string > & all_features () const
 
const features_isolation_t & feature_isolations () const
 
features_isolation_t generate_feature_isolations () const
 
void print_intersections (const std::set< std::string > &s, std::ostream &os=std::cout) const
 
void print_unions (const std::set< std::string > &s, std::ostream &os=std::cout) const
 
void print_results (std::ostream &os=std::cout) const
 
- Public Member Functions inherited from features::feature_location_t
 feature_location_t (feature_id_t n_, feature_id_t m_)
 
const auto & n () const
 
const auto & F () const
 
const auto & S () const
 
const auto & M () const
 
const auto & O () const
 
const auto & A () const
 
const auto & N () const
 
const auto & ON () const
 
const auto & AN () const
 
const auto & DF () const
 
const auto & T () const
 
const auto & D () const
 
feature_names_t generate_independent_features (const std::vector< feature_id_t > &f) const
 
feature_names_t generate_or_features (const std::vector< feature_id_t > &f) const
 
feature_names_t generate_and_features (const std::vector< feature_id_t > &f) const
 
feature_names_t generate_not_features (const std::vector< feature_id_t > &nf) const
 
feature_names_t generate_or_not_features (const std::vector< feature_id_t > &nf) const
 
feature_names_t generate_and_not_features (const std::vector< feature_id_t > &nf) const
 
system_t generate_system (const std::vector< feature_id_t > &f) const
 
systems_t generate_all_systems () const
 
const std::vector< feature_id_t > & raw_independent_features () const
 
const std::vector< std::vector< feature_id_t > > & raw_dependent_features () const
 
const auto & all_systems () const
 
void print_header (std::ostream &os=std::cout)
 
void print_systems (std::ostream &os=std::cout)
 

Detailed Description

Class that performs feature location analysis by calculating all set differences. In this approach, IDs for set differences are created.

Constructor & Destructor Documentation

◆ feature_location_differences_t()

features::feature_location_differences_t::feature_location_differences_t ( feature_id_t  n_,
feature_id_t  m_ 
)
inline

Constructor that requires the number of idependent features and the number of the model as parameters.

Member Function Documentation

◆ evaluate_difference()

std::set<std::string> features::feature_location_differences_t::evaluate_difference ( const systems_difference_t diff) const
inline

Evaluates a set difference and returns the result. Takes the set difference as parameter.

Here is the call graph for this function:

◆ evaluate_intersections()

std::set<std::string> features::feature_location_differences_t::evaluate_intersections ( const systems_difference_t diff) const
inline

Evaluates the intersection part of a set difference and returns the result. Takes a set difference as parameter.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ evaluate_unions()

std::set<std::string> features::feature_location_differences_t::evaluate_unions ( const systems_difference_t diff) const
inline

Evaluates the union part of a set difference and returns the result. Takes a set difference as parameter.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generate_difference()

systems_difference_t features::feature_location_differences_t::generate_difference ( maxnat_t  s) const
inline

Calculates and returns a set difference expression for a single system. Takes total number of systems as parameter.

Here is the call graph for this function:

◆ non_empty_differences()

differences_t features::feature_location_differences_t::non_empty_differences ( ) const
inline

Returns collection with non-empty set differences.

Here is the caller graph for this function:

◆ print_results()

void features::feature_location_differences_t::print_results ( std::ostream &  os = std::cout) const
inline

Prints results of evaluating all set differences. Takes output stream as parameter with std::cout as default value.

Here is the call graph for this function:

◆ system2features()

std::set<std::string> features::feature_location_differences_t::system2features ( std::string  s) const
inline

Takes a string containing all defining features of a system and returs a set of all features that define the system.

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: