HAL  v4.5.0-130-g83e8bfb3f
The Hardware Analyzer - a comprehensive reverse engineering and manipulation framework for gate-level netlists.
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456789]
 CAbc_Frame_t_
 CAbc_Ntk_t_
 CAbc_Obj_t_
 Chal::AbstractExtensionInterface
 Chal::AbstractFactoryProvider
 Chal::NetLayoutJunctionOccupiedHash::AddOrMerge
 Chal::AssignedKeybindMapA map to keep track of the assigned keybinds
 Cspdlog::sinks::base_sink
 Chal::module_identification::BaseCandidateRepresents a base candidate in the module identification process
 Chal::BasePin< T >
 Chal::BasePin< GatePin >
 Chal::BasePin< ModulePin >
 Chal::BasePluginInterface
 Chal::BaseTreeItem(Future) Base class for all tree models related to the details widget
 Chal::bitorder_propagation::BitOrder
 Chal::bitorder_propagation::BitOrderResult
 Chal::BooleanFunction
 Chal::BooleanFunctionDecorator
 Chal::BooleanFunctionNetDecorator
 Chal::BooleanFunctionTableEntryAn entry in the boolean function table model
 Chal::borrowed
 Chal::CallbackHook< class >
 Chal::CallbackHook< R(ArgTypes...)>
 Chal::CallbackHook< void(const spdlog::level::level_enum &, const std::string &, const std::string &)>
 Chal::CallbackHook< void(GateEvent::event, hal::Gate *, u32)>
 Chal::CallbackHook< void(GroupingEvent::event, hal::Grouping *, u32)>
 Chal::CallbackHook< void(ModuleEvent::event, hal::Module *, u32)>
 Chal::CallbackHook< void(NetEvent::event, hal::Net *, u32)>
 Chal::CallbackHook< void(NetlistEvent::event, hal::Netlist *, u32)>
 Chal::module_identification::CandidateContextThis struct manages the context of a candidate during module identification, including caches for all Boolean function related and expensive oprations that are populated during the functional candidate generation
 Chal::xilinx_toolbox::CellDataData of a cell on the FPGA fabric
 Chal::ChannelEntryThe ChannelEntry struct is used by the ChannelItem class to store a single entry
 Chal::ChannelItemThis class represents a channel in the channel model. It primarily holds the channel name and its entries
 Cstd::char_traits
 Chal::hawkeye::CipherCandidateA candidate for a symmetric cryptographic implementation within a netlist
 Chal::SimulationInput::Clock
 Chal::cte::ClockTree
 Chal::ClockTreeExtractorInteractionRegistration
 Chal::utils::Color
 Chal::CommentEntryEncapsulated information related to a comment
 Chal::CommonSuccessorPredecessor
 Chal::CommonSuccessorPredecessorGateQueue
 Chal::dataflow::ConfigurationConfiguration of a dataflow analysis run
 Chal::dataflow::evaluation::Configuration
 Chal::dataflow::processing::Configuration
 Chal::module_identification::ConfigurationConfiguration for the module identification analysis
 Chal::solve_fsm::ConfigurationThe configuration of a run of the FSM solver
 Chal::SMT::Constraint
 Chal::ContentAnchorAn abstract class that provides the interface for specific anchors (see SplitterAnchor or TabWidget )
 Chal::ContentFactory
 Chal::ContentWidgetPlacement
 Chal::dataflow::evaluation::Context
 Chal::dataflow::processing::Context
 Chal::ContextDirectory
 Chal::ContextMenuContribution
 Chal::z3_utils::Converter
 Chal::DataContainer
 Chal::DataTableModel::DataEntry
 Chal::DataflowInteractionRegistration
 Chal::DetailsTableUtilitiesHelper class consisting of usefull details-related functions
 Chal::hawkeye::DetectionConfigurationConfiguration to set up the candidate search
 Chal::utils::DirectoryRange
 Chal::Endpoint
 Chal::EnumStrings< T, typename >
 Chal::result_constructor_type::ER
 Chal::Error
 Chal::EventHandler
 Chal::ExportRegisteredFormatUtility class to export (save) different hal files
 Chal::module_identification::FunctionalCandidateRepresents a functional candidate derived from structural candidates
 Chal::GateEvent
 Chal::GateLibrary
 Chal::GateLibraryParser
 Chal::GateLibrarySelectionEntry
 Chal::GateLibraryWriter
 Chal::GateSelectEntryComprises a single entry of the module selection table
 Chal::GateType
 Chal::GateTypeComponent
 Chal::GraphShaderBase class to store and update visual information about the graph
 Chal::dataflow::GroupingGrouping used during dataflow analysis
 Chal::Grouping
 Chal::GroupingEvent
 Chal::GroupingTableEntryAn entry within a GroupingTableModel
 Chal::GuiExtensionPythonBase
 Chal::netlist_preprocessing::GuiLayoutLockerSuppresses layout updates of the GUI for as long as the object exists
 Chal::xilinx_toolbox::GuiLayoutLockerSuppresses layout updates of the GUI for as long as the object exists
 Chal::GuiPluginEntry
 Cstd::hash< hal::core_strings::CaseInsensitiveString >
 Chal::StandardGraphicsNet::HLine
 CHop_Man_t_
 CHop_Obj_t_
 Cstd::ifstream
 Chal::NetlistSimulatorController::InputColumnHeader
 Chal::JsonWriteData
 Chal::LaneIndex
 Chal::LayoutLocker
 Chal::user_feedback::LayoutLocker
 Chal::LayoutLockerManager
 Chal::StandardGraphicsNet::Lines
 Chal::SaleaeDirectory::ListEntry
 Chal::ListPropertyModel::ListPropertyEntry
 Chal::xilinx_toolbox::LOCInformation on a LOC
 Chal::LogManager::log_sink
 Chal::LoggerSettings
 Chal::LogicEvaluatorTruthtableColumn
 Chal::LogManager
 Chal::dataflow::measure_block_time_t
 Chal::SMT::Model
 Chal::ModuleContextMenu
 Chal::ModuleEvent
 Chal::GuiApiClasses::View::ModuleGateIdPair
 Chal::GraphicsModule::ModulePin
 Chal::ModuleSelectEntryComprises a single entry of the module selection table
 Chal::ModuleSelectExcludeUsed to determine which modules can't be selected
 Chal::NetEvent
 Chal::SimulationInput::NetGroup
 Chal::NetLayoutConnectionFactory
 Chal::NetLayoutDirection
 Chal::NetLayoutJunction
 Chal::NetLayoutJunctionEntries
 Chal::NetLayoutJunctionMultiPin
 Chal::NetLayoutJunctionNetSingle net to be routed through the junction
 Chal::NetLayoutJunctionRange
 Chal::NetLayoutJunctionWire
 Chal::NetLayoutMetric
 Chal::NetLayoutWire
 Chal::Netlist
 Chal::dataflow::NetlistAbstractionThe abstraction of the netlist that only contains gates of a specified type, e.g., flip-flops
 Chal::NetlistEvent
 Chal::graph_algorithm::NetlistGraphA directed graph corresponding to a netlist
 Chal::NetlistInternalManager
 Chal::NetlistModificationDecorator
 Chal::NetlistParser
 Chal::NetlistTraversalDecorator
 Chal::NetlistWriter
 Chal::BooleanFunction::Node
 Chal::NodeObject represents a module or a gate
 Chal::NodeBoxNode placed at a grid position within a hal view
 Chal::BooleanFunction::NodeType
 Cstd::ofstream
 Chal::result_constructor_type::OK
 Chal::cte::PairPtrEq
 Chal::SMT::ModelParser::ParserContext'ParserContext' refers to the data structure that stores parser results
 Chal::dataflow::processing::PassConfiguration
 Cstd::filesystem::path
 Chal::PinChangedBulkScope
 Chal::PinChangedEvent
 Chal::PinChangedEventScope
 Chal::PinGroup< T >
 Chal::PinGroup< hal::GatePin >
 Chal::PinGroup< hal::ModulePin >
 Chal::PlacementEntryContainer class to store a PlacementHint togerther with a set of modules and gates
 Chal::PlacementHintObject provides hints for the layouter how new box objects are placed on a view. In standard mode placement is done using the most compact squere-like arrangement. Alternatively new box objects can be placed to the left or right to a node which serves as 'origin'
 Chal::plugin_manager::PluginFeature
 Chal::PluginParameter
 Chal::NetlistSimulator::SimulationGateRAM::Port
 Chal::PositionGenerator
 Cprocess_attribute_default
 Chal::ProgramArguments
 Chal::ProgramOptions
 Chal::user_feedback::ProgressPrinter
 Chal::user_feedback::ProgressScope
 Chal::ProjectJson
 Chal::ProjectManager
 Chal::ProjectSerializer
 Chal::PyCodeProvider
 Chal::PythonConsoleHistoryStores the history of python commands
 Chal::PythonContextSubscriberInterface for handling python outputs
 Chal::PythonMutex
 CQGraphicsItem [external]
 CQGVInteraction
 CQHash< hal::Node, CoordinateFromData > [external]
 CQHash< LaneIndex, NetLayoutJunctionOccupied > [external]
 CQHash< NetLayoutPoint, NetLayoutJunction * > [external]
 CQHash< Node, QPoint > [external]
 CQHash< WaveItemIndex, WaveItem * > [external]
 CQIconEngine [external]
 CQList< ContentFactory * > [external]
 CQList< ExpandingListItem * > [external]
 CQList< NetLayoutJunctionRange > [external]
 CQList< NetLayoutWire > [external]
 CQList< SettingsWidget * > [external]
 CQList< u32 > [external]
 CQList< WaitToBeSeatedEntry * > [external]
 CQList< WaveData * > [external]
 CQMap< NetLayoutMetric, NetLayoutConnection * > [external]
 CQMap< QString, QString > [external]
 CQObject [external]
 CQPaintDevice [external]
 CQPoint [external]
 CQString [external]
 Chal::SMT::QueryConfig
 CQVector< NodeBox * > [external]
 Chal::RAMPortWizardPage::RAMPort
 Chal::utils::RecursiveDirectoryRange
 Chal::WaveTreeModel::ReorderRequest
 Chal::dataflow::evaluation::Result
 Chal::dataflow::processing::Result
 Chal::dataflow::ResultResult of a dataflow analysis run
 Chal::module_identification::ResultThe result of a module identification run containing the candidates
 Chal::Result< T >
 Chal::RuntimeLibrary
 Chal::SaleaeDataBuffer
 Chal::SaleaeDataTuple
 Chal::SaleaeDirectoryAPI for the SALEAE directory file. The SALEAE directory file with the name "saleae.json" provides the links between waveform data stored in binary SALEAE files and nets from simulated netlist. Additionally composed data like groups, boolean waveforms, or trigger time sets can be persisted in directory file. The file format is JSON
 Chal::SaleaeDirectoryFileIndexSingle SALEAE data file. The class comprises the index and header information from binary data file
 Chal::SaleaeDirectoryNetEntryRegular waveform for a single simulated net. There is the possibility that no simulation data is available for the net (yet), so the number of associated binary files might be zero. The design allows to split the data into several files. This option however is currently not used. The ID must match the ID of the simulated net. The waveform name can be altered by user using the rename() method
 Chal::SaleaeDirectoryStoreRequestUseful to bundle requests for updating SALEAE directory. Many operations such as renaming waveform, creating groups, assigning waveform to groups require update of SALEAE directory. To avoid multiple write_json() calls during the same operation it is recommended to create an instance of SaleaeDirectoryStoreRequest rather than calling write_json() directly. When leaving the scope the destructor of the last instance will perform the write operation
 Chal::SaleaeHeader
 Chal::SaleaeParserEngine which allows to parse any number of SALEAE files into a sequence of events ordered by time. The SaleaeParser is used in the following way:
 Chal::SaleaeStatus
 Chal::SaleaeWriterHelper class which provides utility methods when importing data to SALEAE database. The SaleaeWriter class is used for importing VCD, CSD, or external SALEAE files
 Chal::hawkeye::SBoxAn S-box located within the round function of a CipherCandidate
 Chal::hawkeye::SBoxDatabaseDatabase of known S-boxes
 Chal::SearchOptions
 Chal::GraphShader::Shading
 Chal::Simulation
 Chal::SimulationEngine
 Chal::SimulationEngineFactory
 Chal::SimulationInput
 Csmallset_t
 Chal::SolveFsmInteractionRegistration
 Chal::SMT::Solver
 Chal::SMT::SolverResult
 Chal::solve_fsm::StateTransitionGraphThe state transition graph of an FSM, i.e., the behavior that its netlist implements
 Chal::module_identification::Statistics
 Chal::module_identification::StructuralCandidateA class representing a structural candidate for module identification
 Chal::SubgraphNetlistDecorator
 Chal::SMT::SymbolicExecution
 Chal::SMT::SymbolicState
 CTESTB< VA >
 Chal::TimeInterval
 Chal::BooleanFunctionParser::TokenToken refers to a token identifier and accompanied data
 Chal::Token< T >
 Chal::TokenStream< T >
 Chal::TokenStream< ci_string >
 Chal::TokenStream< std::string >
 Chal::TokenStream< T >::TokenStreamException
 Chal::TraversalCache
 Cstd::unordered_map
 Chal::UserActionAbstract base class for user interactions
 Chal::UserActionFactoryThe UserActionFactory is the abstract base class for registration
 Chal::UserActionObjectSingle object used in UserAction
 Chal::ValidatorBase class for any string validator
 Chal::VcdSerializerElement
 CVec_Int_t_
 CVec_Ptr_t_
 CVec_Vec_t_
 Cstd::vector
 Chal::module_identification::VerifiedCandidateRepresents a verified candidate for module identification
 Chal::GuiApiClasses::View
 Chal::GraphicsNet::Visuals
 Chal::GraphicsNode::Visuals
 Chal::StandardGraphicsNet::VLine
 Chal::cte::VoidPtrHash
 Chal::WaitToBeSeatedEntry
 Chal::WaveData
 Chal::WaveDataGroupIndex
 Chal::WaveDataProvider
 Chal::WaveDataTimeframe
 Chal::WaveEvent
 Chal::WaveFormPainted
 Chal::WaveFormPrimitive
 Chal::WaveGroupValue
 Chal::WaveItemIndex
 Chal::WaveLogicTimescale
 Chal::WaveSelectionEntry
 Chal::WaveTransform
 Chal::WaveZoomShift
 Chal::module_identification::WordLevelOperationRepresents a word-level operation with its operands, control signals, and the operation implemented as a HAL Boolean function