KiCad PCB EDA Suite
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456]
 CPROJECT::_ELEMA PROJECT can hold stuff it knows nothing about, in the form of _ELEM derivatives
 C_TLAYER
 CPCAD2KICAD::_TTEXTVALUE
 CABOUT_APP_INFOAn object of this class is meant to be used to store application specific information like who has contributed in which area of the application, the license, copyright and other descriptive information
 CACTION_MANAGERClass ACTION_MANAGER
 CACTION_PLUGINClass ACTION_PLUGIN This is the parent class from where any action plugin class must derive
 CACTION_PLUGINSClass ACTION_PLUGINS Mainly static
 CACTIONSClass ACTIONS
 Cp2t::AdvancingFront
 CPNS::ALGO_BASEClass ALGO_BASE
 CALIAS_INFO_GENERATOR
 CAliasMapSortLIB_ALIAS map sorting
 CAM_PARAMClass AM_PARAM holds a parameter value for an "aperture macro" as defined within standard RS274X
 CAM_PARAM_EVALThis helper class hold a value or an arithmetic operator to calculate the final value of a aperture macro parameter, using usual arithmetic operator precedence Only operators ADD, SUB, MUL, DIV, OPEN_PAR, CLOSE_PAR have meaning when calculating a value
 CAM_PARAM_ITEMClass AM_PARAM holds an operand for an AM_PARAM as defined within standard RS274X
 CAM_PRIMITIVEStruct AM_PRIMITIVE holds an aperture macro primitive as given in Table 3 of http://gerbv.sourceforge.net/docs/rs274xrevd_e.pdf
 CGRID_HELPER::ANCHOR
 CAPERTURE
 CAPERTURE_MACROStruct APERTURE_MACRO helps support the "aperture macro" defined within standard RS274X
 CAPERTURE_MACRO_less_thanStruct APERTURE_MACRO_less_than is used by std:set<APERTURE_MACRO> instantiation which uses APERTURE_MACRO.name as its key
 CARRAY_CREATOR
 CDIALOG_CREATE_ARRAY::ARRAY_OPTIONSPersistent dialog options
 CAUTOPLACER
 CAUTOROUTER_CONTEXT
 CBASE_SEQ
 CBASE_SET
 Cp2t::SweepContext::Basin
 Cbbox_s
 CBEZIER_POLYBezier curves to polygon converter
 CBIN_MODStruct BIN_MOD pertains to a single program module, either an EXE or a DSO/DLL ("bin_mod")
 Cbinary_function
 CBITMAP_BASEThis class handle bitmap images in KiCad
 CBITMAP_OPAQUEPNG memory record (file in memory)
 Cblock
 Cbmp_info_s
 CBOARD_DESIGN_SETTINGSClass BOARD_DESIGN_SETTINGS contains design settings for a BOARD object
 CBOARD_NETLIST_UPDATERClass BOARD_NETLIST_UPDATER updates the BOARD with a new netlist
 CBOM_COLUMNBOM_COLUMN class Models a single column in the BOM view Each column can be used to group components, and can be hidden from the output BOM
 CBOM_COLUMN_LIST
 CBOM_FIELD_VALUESQuick lookup of component values (based on Field ID) This is done for the following reasons:
 CBOM_PLUGINStructure BOM_PLUGIN holds data of the BOM plugin
 CBOM_TABLE_ROWVirtual base class determining how a row is displayed There are three types of rows: GROUP - Displays a group of (one or more) components COMPONENT - Displays a single component UNIT - Child of COMPONENT for multi-unit components
 CSutherlandHodgman::BoundaryHor< Comp >
 CSutherlandHodgman::BoundaryVert< Comp >
 CBOX2< Vec >Class BOX2 handles a 2-D bounding box, built on top of an origin point and size vector, both of templated class Vec
 CBOX2< VECTOR2I >
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::BranchMay be data or may be another subtree The parents level determines this
 CBucketInfo
 CBUFFERED_DC_HELPERClass BUFFERED_DC_HELPER fixes a bug on Windows when using buffered device context
 CTOOL_DISPATCHER::BUTTON_STATE

Stores information about a mouse button state

 CBUTTONINDEX
 CBVH_CONTAINER_NODE_2D
 CBVHBuildNode
 CBVHPrimitiveInfo
 CC3D_RENDER_BASEThis is a base class to hold data and functions for render targets
 CC_OGL_3DMODEL
 CFOOTPRINT_PREVIEW_PANEL::CACHE_ENTRY
 CPNS::OPTIMIZER::CACHE_VISITOR
 CPNS::OPTIMIZER::CACHED_ITEM
 CKIGFX::CAIRO_COMPOSITOR::CAIRO_BUFFER
 CCOROUTINE< ReturnType, ArgType >::CALL_CONTEXT
 CCBBOXClass CBBOX manages a bounding box defined by two SFVEC3F min max points
 CCBBOX2DClass CBBOX manages a bounding box defined by two SFVEC2F min max points
 CCCAMERAClass CCAMERA is a virtual class used to derive CCAMERA objects from
 CCCOLORRGB
 Cp2t::CDT
 CCFRUSTUM
 CCGENERICACCELERATOR
 CCGENERICCONTAINER
 CCGENERICCONTAINER2D
 CKIGFX::VIEW::changeItemsDepth
 CCIMAGEClass CIMAGE manages a 8-bit channel image
 CCINFO3D_VISUClass CINFO3D_VISU Helper class to handle information needed to display 3D board
 CCLAYER_TRIANGLE_CONTAINERStores an manage vector of triangles
 CCLAYER_TRIANGLESStores arrays of triangles to be used to create display lists
 CCLAYERS_OGL_DISP_LISTSStores the openGL display lists to related with a layer
 CPNS_PCBNEW_RULE_RESOLVER::CLEARANCE_ENT
 CKIGFX::VIEW::clearLayerCache
 CPOLYGON_GEOM_MANAGER::CLIENT"Listener" interface for a class that wants to be updated about polygon geometry changes
 CCLIGHTA base light class to derive to implement other light classes
 CCLIGHTCONTAINERA light contariner. It will add lights and remove it in the end
 CCMATERIALA base material class that can be used to derive a material implementation
 Ccmp
 CCMP_CANDIDATE
 CCMP_READERClass CMP_READER reads a component footprint link file (*.cmp) format
 CCMP_TREE_NODEModel class in the component selector Model-View-Adapter (mediated MVC) architecture
 CCN_ANCHOR
 CCN_CLUSTER
 CCN_CONNECTIVITY_ALGO
 CCN_DISJOINT_NET_ENTRY
 CCN_EDGE
 CCN_LIST
 CCN_ZONE_ISOLATED_ISLAND_LIST
 CCOBJECT
 CCOBJECT2D
 CCOBJECT2D_STATSImplements a class for object statistics using Singleton pattern
 CCOBJECT3D_STATSImplements a class for object statistics using Singleton pattern
 CCOGL_ATT_LISTClass COGL_ATT_LIST Helper class to create an attribute list
 CCOLLECTORClass COLLECTOR is an abstract class that will find and hold all the objects according to an inspection done by the Inspect() function which must be implemented by any derived class
 CCOLLECTORS_GUIDEAn abstract base class whose derivatives may be passed to a GENERAL_COLLECTOR, telling GENERAL_COLLECTOR what should be collected (aside from HitTest()ing and KICAD_T scanTypes[], information which are provided to the GENERAL_COLLECTOR through attributes or arguments separately)
 CKIGFX::COLOR4DClass COLOR4D is the color representation with 4 components: red, green, blue, alpha
 CCOLORBUTTON
 CCOMMITClass COMMIT
 CCOMMIT::COMMIT_LINE
 CCOMP_FIELDSHolder for multi-unit component fields
 Ccompare_label_names
 Ccompare_labels
 Ccompare_paths
 CSHAPE_LINE_CHAIN::compareOriginDistance
 CcompareOriginDistance
 CComparePoints
 CCompareToBucket
 CCompareToMid
 CCOMPONENTClass COMPONENT is used to store components and all of their related information found in a netlist
 CCOMPONENT_NETClass COMPONENT_NET is used to store the component pin name to net name associations stored in a netlist
 CSCH_BASE_FRAME::COMPONENT_SELECTION
 CKIGFX::COMPOSITOR
 CCONDITIONAL_MENU
 CCONFIG_SAVE_RESTORE_WINDOW::CONFIG_CTRL_T
 CCONFIG_SAVE_RESTORE_WINDOW
 CCONNECTIVITY_DATA
 CCONTRIBUTORA contributor, a person which was involved in the development of the application or which has contributed in any kind somehow to the project
 CCOROUTINE< ReturnType, ArgType >Class COROUNTINE
 CCOROUTINE< int, const TOOL_EVENT & >
 CCOROUTINE< int, int >
 CPNS::COST_ESTIMATORClass COST_ESTIMATOR
 CPNS::DIFF_PAIR::COUPLED_SEGMENTS
 CCPOLYGONS_LISTCPOLYGONS_LIST handle a list of contours (polygons corners)
 CCPolyLine
 CCPOSTSHADER
 CCPROCEDURALGENERATORA base class that can be used to derive a procedural generator implementation
 CDIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES
 CCRectPlacement
 CCSegment
 CCTLsHolds the 3 UI control pointers for a single board layer
 CCWORK
 CD356_RECORD
 CD_CODEClass D_CODE holds a gerber DCODE (also called Aperture) definition
 CDANGLING_END_ITEMClass DANGLING_END_ITEM is a helper class used to store the state of schematic items that can be connected to other schematic items
 Ched::DART
 CDartDart class for the half-edge data structure
 CPNS::DEBUG_DECORATOR
 CDHEADClass DHEAD is only for use by template class DLIST, use that instead
 CDIRECTION_45Class DIRECTION_45
 CDISPLAY_OPTIONSClass DISPLAY_OPTIONS handles display options like enable/disable some optional drawings
 CDLIST_ITERATOR_WRAPPER< T >
 CPNS::DP_GATEWAYS::DP_CANDIDATE
 CPNS::DP_GATEWAYClass DP_GATEWAY
 CPNS::DP_GATEWAYSClass DP_GATEWAYS
 CPNS::DP_PRIMITIVE_PAIRClass DP_PRIMITIVE_PAIR
 CDRAG_LIST
 CDRAG_SEGM_PICKERHelper classes to handle a list of track segments to drag and has info to undo/abort the move command
 CKIGFX::VIEW::drawItem
 CDRCClass DRC is the Design Rule Checker, and performs all the DRC tests
 CDRC_ITEMClass DRC_ITEM is a holder for a DRC (in Pcbnew) or ERC (in Eeschema) error item
 CDRC_ITEM_LISTClass DRC_ITEM_LIST provides an abstract interface of a DRC_ITEM* list manager
 CDRILL_PRECISION
 CDRILL_TOOL
 CDRW_Interface
 CDSNLEXERClass DSNLEXER implements a lexical analyzer for the SPECCTRA DSN file format
 CEAGLE_LAYER
 CEAGLE_LIBRARY
 CEATTRClass EATTR parses an Eagle "attribute" XML element
 CECIRCLEEagle circle
 CECONNECT
 CECOORD
 CEDA_BLIT_NORMALIZERClass EDA_BLIT_NORMALIZER is a helper class for clearing a device context scale and offset parameters before performing a Blit operation
 CEDA_COMBINED_MATCHER
 CEDA_CROSS_HAIR_MANAGERClass EDA_CROSS_HAIR_MANAGER is used to hide the cross hair and restore it when the class goes out of scope
 CEDA_GRAPHIC_TEXT_CTRLClass EDA_GRAPHIC_TEXT_CTRL is a custom text edit control to edit/enter Kicad dimensions ( INCHES or MM )
 CEDA_HOTKEYClass EDA_HOTKEY is a class to handle hot key commands
 CEDA_HOTKEY_CONFIGStructure EDA_HOTKEY_CONFIG contains the information required to save hot key information to a configuration file
 CEDA_PATTERN_MATCH
 CEDA_POSITION_CTRL
 CEDA_RECTClass EDA_RECT handles the component boundary box
 CEDA_TEXTClass EDA_TEXT is a mix-in class (via multiple inheritance) that handles texts such as labels, parts, components, or footprints
 CEDA_VALUE_CTRL
 CEDEVICE
 CEDEVICE_SET
 Ched::EDGEEdge class in the in the half-edge data structure
 Cp2t::Edge
 Cp2t::SweepContext::EdgeEvent
 CEDIMENSIONEagle dimension element
 CEDIT_CONSTRAINT< EDIT_TYPE >Class EDIT_CONSTRAINT
 CEDIT_CONSTRAINT< EDIT_LINE >
 CEDIT_CONSTRAINT< EDIT_POINT >
 CEDIT_POINTClass EDIT_POINT
 CEDIT_POINTS_FACTORY
 CEELEMENTEagle element element
 CEGATE
 CEHOLEEagle hole element
 CEINSTANCE
 CEJUNCTIONEagle Junction
 CELABELEagle label
 CELAYER
 CDSN::ELEMClass ELEM is a base class for any DSN element class
 CPAD_CONTEXT_MENU::ENABLEMENTS
 CENETEagle net
 CCONDITIONAL_MENU::ENTRY

Helper class to organize menu entries.

 CPNS::ITEM_SET::ENTRY
 CIO_MGR::PLUGIN_REGISTRY::ENTRY
 CENV_VAR_ITEMClass ENV_VAR_ITEM
 CEPADEagle thru hol pad
 CEPART
 CEPINEagle pin element
 CEPOLYGONEagle polygon, without vertices which are parsed as needed
 CUTIL::DETAIL::equals< T >
 CERECTEagle XML rectangle in binary
 CEROTEagle rotation
 CERULESSubset of eagle.drawing.board.designrules in the XML document
 CESMDEagle SMD pad
 CETEXTEagle text element
 CEVERTEXEagle vertex
 CEVIAEagle via
 CEWIREEagle wire
 CEXCELLON_CMD
 CKIGFX::VIEW::extentsVisitor
 CFlagString
 Cfnv_1aVery fast and efficient hash function for "const char*" type, used in specialized KEYWORD_MAP below
 CKIGFX::BUILTIN_FONT::FONT_GLYPH_TYPE
 CKIGFX::BUILTIN_FONT::FONT_IMAGE_TYPE
 CKIGFX::BUILTIN_FONT::FONT_INFO_TYPE
 CKIGFX::BUILTIN_FONT::FONT_SPAN_TYPE
 CFOOTPRINT_ASYNC_LOADERThis class can be used to populate a FOOTPRINT_LIST asynchronously
 CFOOTPRINT_EQUIVALENCE
 CFOOTPRINT_FILTERFootprint display filter
 CFOOTPRINT_INFO
 CFOOTPRINT_LISTHolds a list of FOOTPRINT_INFO objects, along with a list of IO_ERRORs or PARSE_ERRORs that were thrown acquiring the FOOTPRINT_INFOs
 CFOOTPRINT_PREVIEW_PANEL_BASEBase class for the actual viewer panel
 CFOOTPRINT_WIZARDClass FOOTPRINT_WIZARD This is the parent class from where any footprint wizard class must derive
 CFOOTPRINT_WIZARDS
 CFP_CACHE
 CFP_CACHE_ITEMClass FP_CACHE_ITEM is helper class for creating a footprint library cache
 CFP_THREAD_IFACEThreadsafe interface class between loader thread and panel class
 CFractureEdge
 CFRUSTUMFrustum structure Frustum is a implementation based on a tutorial by http://www.lighthouse3d.com/tutorials/view-frustum-culling/
 CKIGFX::GAL_DISPLAY_OPTIONS_OBSERVER
 CGBR_APERTURE_METADATA
 CGBR_DISPLAY_OPTIONS
 CGBR_METADATA
 CGBR_NETLIST_METADATAThis class handle info which can be added in a gerber file as attribute of an obtect the GBR_INFO_TYPE types can be OR'ed to add 2 (or more) attributes There are only 3 net attributes defined attached to an object by the TO command TO.P TO.N TO.C the .P attribute can be used only for flashed pads (using the D03 command) and only for external copper layers, if the component is on a external copper layer for other copper layer items (pads on internal layers, tracks ..
 CGBR_TO_PCB_EXPORTER
 CGENDRILL_WRITER_BASEGENDRILL_WRITER_BASE is a class to create drill maps and drill report, and a helper class to created drill files
 CGERBER_JOBFILE_READERThis class read and parse a Gerber job file to extract useful info for GerbView
 CGERBER_JOBFILE_WRITERGERBER_JOBFILE_WRITER is a class used to create Gerber job file a Gerber job file stores info to make a board: list of gerber files info about the board itsel: size, number of copper layers thickness of the board, copper and dielectric and some other info (colors, finish type ...)
 CGERBER_LAYER
 CGITHUB_GETLIBLISTClass GITHUB_GETLIBLIST implements a portion of pcbnew's PLUGIN interface to provide read only access to a github repo to extract pretty footprints library list, in json format, or extract 3D shapes libraries list (.3dshapes folders) and download the 3d shapes files
 CGL_CONTEXT_MANAGER
 CGPCB_FPL_CACHE
 CGPCB_FPL_CACHE_ITEMClass GPCB_FPL_CACHE_ITEM is helper class for creating a footprint library cache
 CKIGFX::GPU_MANAGERClass to handle uploading vertices and indices to GPU in drawing purposes
 Cgreymap_s
 CGRID_HELPER
 CGRID_TYPEClass GRID_TYPE is for grid arrays
 CKIGFX::CAIRO_GAL::GROUP_ELEMENTType definition for an graphics group element
 CPNS::JOINT::HASH_TAG

Joints are hashed by their position, layers and net.

 CHIGH_LIGHT_INFO
 CHITINFOStores the hit information of a ray with a point on the surface of a object
 CHITINFO_PACKET
 CHLBVH_SAH_Evaluator
 CHOLE_INFO
 Chotkey_name_descr
 CHOTKEY_SECTIONStruct HOTKEY_SECTION Associates a hotkey configuration with a name
 CINDICATOR_ICON::ICON_PROVIDERA simple object that can provide fixed bitmaps for use as row indicators
 CIFSG_NODEClass IFSG_NODE represents the base class of all DLL-safe Scene Graph nodes
 CUTIL::DETAIL::OBSERVABLE_BASE::IMPL
 CINCREMENTAL_TEXT_CTRLClass that governs a textual control holding a number that can be incremented/decremented according to some scheme (often just a constant step)
 CPNS::INDEXClass INDEX
 CMWAVE::INDUCTOR_PATTERNParameters for construction of a microwave inductor
 CINTERACTIVE_PLACER_BASE
 CSHAPE_LINE_CHAIN::INTERSECTIONStruct INTERSECTION
 CINTRUSIVE_LIST< T >

A lightweight intrusive list container

 CINTRUSIVE_LIST< CN_ITEM >
 CCOROUTINE< ReturnType, ArgType >::INVOCATION_ARGS
 CIO_ERRORStruct IO_ERROR is a class used to hold an error message and may be used when throwing exceptions containing meaningful error messages
 CIO_MGRClass IO_MGR is a factory which returns an instance of a PLUGIN
 CDIALOG_LIB_EDIT_PIN_TABLE::DataViewModel::Item
 CPNS::ITEMClass ITEM
 CCN_CONNECTIVITY_ALGO::ITEM_MAP_ENTRY
 CITEM_PICKER
 CPNS::ITEM_SET
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::IteratorIterator is not remove safe
 CSHAPE_INDEX< T >::Iterator
 CSHAPE_INDEX_LIST< T, >::iterator
 Citerator
 CNETINFO_MAPPING::iterator

Wrapper class, so you can iterate through NETINFO_ITEM*s, not std::pair<int/wxString, NETINFO_ITEM*>

 CNETINFO_LIST::iterator

Wrapper class, so you can iterate through NETINFO_ITEM*s, not std::pair<int/wxString, NETINFO_ITEM*>

 CMULTIVECTOR< T, FIRST_TYPE_VAL, LAST_TYPE_VAL >::ITERATOR_BASE< ITEM_TYPE, ITEM_CONTAINER, ITEM_CONTAINER_IT >Generic implementation of a flat const/non-const iterator over contained items
 Citerator_facade
 CSHAPE_POLY_SET::ITERATOR_TEMPLATE< T >Class ITERATOR_TEMPLATE
 CJOBFILE_PARAMSClass JOBFILE_PARAMS store the list of parameters written in Gerber job file especialy list of .gbr filenames and the corresponding layer id belonging the job
 CPNS::JOINT::JOINT_TAG_HASH
 CKEYWORDStruct KEYWORD holds a keyword string and its unique integer token
 CKICAD_CURLClass KICAD_CURL simple wrapper class to call curl_global_init and curl_global_cleanup for KiCad
 CKICAD_CURL_EASYClass KICAD_CURL_EASY wrapper interface around the curl_easy API
 CKIFACEClass KIFACE is used by a participant in the KIWAY alchemy
 CKIWAY_HOLDERClass KIWAY_HOLDER is a mix in class which holds the location of a wxWindow's KIWAY
 CKIWAY_MGRClass KIWAY_MGR is a container for all KIWAYS [and PROJECTS]
 CLANGUAGE_DESCRA small class to handle the list of existing translations
 CLAYERClass LAYER holds information pertinent to a layer of a BOARD
 CLAYER_RANGEClass LAYER_RANGE
 CLAYER_SELECTOR
 CLBVHTreelet
 CPinNumbers::less
 CLIB_MANAGER::LIB_BUFFER

Class to store a working copy of a library

 CLIB_COLLECTOR_DATA
 CLIB_IDA logical library item identifier and consists of various portions much like a URI
 CLIB_MANAGERClass to handle modifications to the symbol libraries
 CLIB_PART_LESS_THANStruct LIB_PART_LESS_THAN is used by std:set<LIB_PART*> instantiation which uses LIB_PART name as its key
 CWIZARD_FPLIB_TABLE::LIBRARY
 CLINE_READERClass LINE_READER is an abstract class from which implementation specific LINE_READERs may be derived to read single lines of text and manage a line number counter
 CPNS::LINE_RESTRICTIONS
 CLinearBVHNode
 CUTIL::LINK
 CLIST_MOD
 Clist_size_check
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::ListNodeA link list of nodes for reinsertion after a delete operation
 CLOCALE_IOClass LOCALE_IO is a class that can be instantiated within a scope in which you are expecting exceptions to be thrown
 CPNS::LOGGER
 CLP_CACHEClass LP_CACHE assists only for the footprint portion of the PLUGIN API, and only for the LEGACY_PLUGIN, so therefore is private to this implementation file, i.e
 CLRU_WXSTR_CACHE< t_value >Template LRU_WXSTR_CACHE template for a wxString key based LRU cache
 Cmap
 CMARKER_BASE
 CS3D::MATLIST
 CMATRIX3x3< T >Class MATRIX3x3 describes a general 3x3 matrix
 CMATRIX3x3< double >
 CMATRIX_ROUTING_HEADClass MATRIX_ROUTING_HEAD handle the matrix routing that describes the actual board
 CMD5_HASH::MD5_CTX
 CMD5_HASH
 CPNS::MEANDER_SETTINGSClass MEANDER_SETTINGS
 CPNS::MEANDER_SHAPEClass MEANDER_SETTINGS
 CPNS::MEANDERED_LINEClass MEANDERED_LINE
 CMICROWAVE_TOOL_INFO
 CMIN_SPAN_TREEThe class MIN_SPAN_TREE calculates the rectilinear minimum spanning tree of a set of points (pads usually having the same net) this class is an abstract class because you must provide the function int GetWeight( int aItem1, int aItem2 ) that calculate the distance between 2 items MIN_SPAN_TREE does not know anything about the actual items to link by the tree
 CDIALOG_SPICE_MODEL::MODEL
 CMODEL_VRML
 CMODULE_3D_SETTINGS
 CMODULE_MAP
 CMortonPrimitive
 CDIALOG_MOVE_EXACT::MOVE_EXACT_OPTIONSPersistent dialog options
 CMOVE_PARAMETERS
 CMSG_PANEL_ITEMClass EDA_MSG_ITEM is used EDA_MSG_PANEL as the item type for displaying messages
 CKIGFX::PREVIEW::MULTISTEP_GEOM_MANAGERA geometry manager that works by accepting a sequence of points and advancing though stages of geometric construction with each point "locked in"
 CMULTIVECTOR< T, FIRST_TYPE_VAL, LAST_TYPE_VAL >Multivector container type
 CMULTIVECTOR< LIB_ITEM, LIB_ARC_T, LIB_FIELD_T >
 CMutexTypeA dummy mutex that doesn't actually exclude anything, but as there is no parallelism either, no worries
 CMyClass
 CWIDGET_NET_SELECTOR::NET
 CNETCLASSClass NETCLASS handles a collection of nets and the parameters used to route or test these nets
 CNETCLASSESClass NETCLASSES is a container for NETCLASS instances
 CNETCUP
 CNETINFO_LISTClass NETINFO_LIST is a container class for NETINFO_ITEM elements, which are the nets
 CNETINFO_MAPPING
 CNETLISTClass NETLIST stores all of information read from a netlist along with the flags used to update the NETLIST in the BOARD
 CNETLIST_EXPORTERClass NETLIST_EXPORTER is a abstract class used for the netlist exporters that eeschema supports
 CNETLIST_OBJECT
 CNETLIST_OBJECTS
 CNETLIST_READERClass NETLIST_READER is a pure virtual class to derive a specific type of netlist reader from
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::NNNodeData structure used for Nearest Neighbor search implementation
 Ched::NODENode class for data structures (Inherits from HandleId)
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::NodeNode for each branch level
 CPNS::NODEClass NODE
 Cp2t::Node
 Cnoncopyable
 Cnull_deleterHttp://www.boost.org/doc/libs/1_55_0/libs/smart_ptr/sp_techniques.html::weak_without_shared
 CNumericEvaluator
 CnumEval::NumericEvaluator
 CUTIL::DETAIL::OBSERVABLE_BASE
 CPNS::OBSTACLEStruct OBSTACLE
 CPNS::OBSTACLE_VISITORStruct OBSTACLE_VISITOR
 CKIGFX::OPENGL_COMPOSITOR::OPENGL_BUFFER
 CKIGFX::OPENGL_PRESENTOR
 Copti_s
 CPNS::OPTIMIZERClass OPTIMIZER
 COPTIONAL_XML_ATTRIBUTE< T >Class OPTIONAL_XML_ATTRIBUTE models an optional XML attribute
 COPTIONAL_XML_ATTRIBUTE< bool >
 COPTIONAL_XML_ATTRIBUTE< double >
 COPTIONAL_XML_ATTRIBUTE< ECOORD >
 COPTIONAL_XML_ATTRIBUTE< EROT >
 COPTIONAL_XML_ATTRIBUTE< int >
 COPTIONAL_XML_ATTRIBUTE< string >
 CDIALOG_BLOCK_OPTIONS::OPTIONSStruct that will be set with the result of the user choices in the dialog
 COUTERS_AND_HOLESThis structured will be used to handle a sub set of a polygon
 COUTPUTFORMATTERClass OUTPUTFORMATTER is an important interface (abstract class) used to output 8 bit text in a convenient way
 CSutherlandHodgman::OutputStage
 CPAD_CS_PRIMITIVEHelper class to handle a primitive (basic shape: polygon, segment, circle or arc) to build a custom pad full shape from a set of primitives
 CPAD_DRAWINFO
 CPAGE_INFOClass PAGE_INFO describes the page size and margins of a paper page on which to eventually print or plot
 CKIGFX::PAINTERClass PAINTER contains all the knowledge about how to draw graphical object onto any particular output device
 CPARAM_CFG_BASEClass PARAM_CFG_BASE is a base class which establishes the interface functions ReadParam and SaveParam, which are implemented by a number of derived classes, and these function's doxygen comments are inherited also
 CZONE_CREATE_HELPER::PARAMSParameters used to fully describe a zone creation process
 CLIB_MANAGER::PART_BUFFER

Class to store a working copy of a LIB_PART object and editor context.

 CPART_DRAW_OPTIONS
 CPART_LIBObject used to load, save, search, and otherwise manipulate symbol library files
 CPART_LIBS_BASE
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::PartitionVarsVariables for finding a split partition
 CPCAD2KICAD::PCB_CALLBACKS
 CPCB_DISPLAY_OPTIONSClass PCB_DISPLAY_OPTIONS handles display options like enable/disable some optional drawings
 CPCB_PLOT_PARAMSClass PCB_PLOT_PARAMS handles plot parameters and options when plotting/printing a board
 CPcbQueue
 CPerlinNoise
 CPGM_BASEClass PGM_BASE keeps program (whole process) data for KiCad programs
 CPICKED_ITEMS_LISTClass PICKED_ITEMS_LIST is a holder to handle information on schematic or board items
 CDSN::PIN_PAIRStruct PIN_PAIR is used within the WAS_IS class below to hold a pair of PIN_REFs and corresponds to the (pins was is) construct within the specctra dsn spec
 CPinNumbers
 CPL_EDITOR_LAYOUTClass PL_EDITOR_LAYOUT holds list of GERBER_DRAW_ITEM currently loaded
 CPLOT_CONTROLLERBatch plotter state object
 CSIM_PLOT_FRAME::PLOT_INFO
 CPLOTTERBase plotter engine class
 CPLUGINClass PLUGIN is a base class that BOARD loading and saving plugins should derive from
 CIO_MGR::PLUGIN_REGISTRYClass PLUGIN_REGISTRY Holds a list of available plugins, created using a singleton REGISTER_PLUGIN object
 Cp2t::Point
 CDSN::POINTStruct POINT is a holder for a point in the SPECCTRA DSN coordinate system
 CPOINT_COORD
 Cpoint_s
 CPointF
 CPOLY_GRID_PARTITIONClass POLY_GRID_PARTITION
 CPOLYGON_GEOM_MANAGERClass that handles the drawing of a polygon, including management of last corner deletion and drawing of leader lines with various constraints (eg 45 deg only)
 CPOLYSEGMENT
 CDIALOG_POSITION_RELATIVE::POSITION_RELATIVE_OPTIONSPersistent dialog options
 Cpotrace_bitmap_s
 Cpotrace_curve_s
 Cpotrace_dpoint_s
 Cpotrace_param_s
 Cpotrace_path_s
 Cpotrace_privpath_s
 Cpotrace_progress_s
 Cpotrace_state_s
 CPRINT_PARAMETERSClass PRINT_PARAMETERS handles the parameters used to print a board drawing
 CSELECTION_TOOL::PRIVPrivate implementation of firewalled private data
 Cprivcurve_s
 CPROF_COUNTERThe class PROF_COUNTER is a small class to help profiling
 CPROGRESS_REPORTER
 Cprogress_s
 CPROJECTClass PROJECT holds project specific data
 CPROJECT_TEMPLATEA class which provides project template functionality
 CDSN::PROPERTY
 Cptr_vector
 CPyLOCK
 CPYTHON_ACTION_PLUGINS
 CPYTHON_FOOTPRINT_WIZARDS
 CSHAPE_INDEX_LIST< T, >::query_iterator
 CKIGFX::queryVisitor< Container >
 CRANGE< T >
 CRANGED_NUM< T >
 CRANGED_NUM< int >
 CRAY
 CRAY2D
 CRAYPACKET
 CRAYSEG2D
 CKIGFX::VIEW::recacheItem
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::RectMinimal bounding rectangle (n-dimensional)
 CRectF
 CIO_MGR::REGISTER_PLUGINClass REGISTER_PLUGIN Registers a plugin
 CPLUGIN::RELEASERClass RELEASER releases a PLUGIN in the context of a potential thrown exception, through its destructor
 Crender_s
 CKIGFX::RENDER_SETTINGSClass RENDER_SETTINGS Contains all the knowledge about how graphical objects are drawn on any output surface/device
 CWX_HTML_REPORT_PANEL::REPORT_LINE
 CREPORTERClass REPORTER is a pure virtual class used to derive REPORTER objects from
 CRESCUE_CANDIDATE
 CRESCUE_LOG
 CRESCUER
 CRN_DYNAMIC_LINE
 CRN_NETClass RN_NET Describes ratsnest for a single net
 CPNS::ROUTER
 CPNS::ROUTER_IFACEClass ROUTER
 CPNS::ROUTING_SETTINGSClass ROUTING_SETTINGS
 CLAYER_WIDGET::ROWStruct ROW provides all the data needed to add a row to a LAYER_WIDGET
 CS3D::rsort_wxString
 CRTFileStream
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >Implementation of RTree, a multidimensional bounding rectangle tree
 CRTree< T, int, 2, float >
 CPNS::RULE_RESOLVERClass RULE_RESOLVER
 Cruntime_error
 CPNS::LINE_RESTRICTIONS::RVERTEX
 CS3D_ALIAS
 CS3D_CACHE
 CS3D_CACHE_ENTRY
 CS3D_FILENAME_RESOLVER
 CS3D_INFO
 CS3D_PLUGIN_MANAGER
 CS3DMODELStore the a model based on meshes and materials
 CS_FILTER5x5 Filter struct parameters
 CPOLY_GRID_PARTITION::SCAN_STATE
 CSCH_FIND_COLLECTOR_DATAClass SCH_FIND_COLLECTOR_DATA is used as a data container for the associated item found by the SCH_FIND_COLLECTOR object
 CSCH_IO_MGRClass SCH_IO_MGR is a factory which returns an instance of a SCH_PLUGIN
 CSCH_LEGACY_PLUGIN_CACHEA cache assistant for the part library portion of the SCH_PLUGIN API, and only for the SCH_LEGACY_PLUGIN, so therefore is private to this implementation file, i.e
 CSCH_PLUGINBase class that schematic file and library loading and saving plugins should derive from
 CSCH_PLUGIN::SCH_PLUGIN_RELEASERHelper object to release a SCH_PLUGIN in the context of a potential thrown exception through its destructor
 CSCH_REFERENCEClass SCH_REFERENCE is used as a helper to define a component's reference designator in a schematic
 CSCH_REFERENCE_LISTClass SCH_REFERENCE_LIST is used to create a flattened list of components because in a complex hierarchy, a component can be used more than once and its reference designator is dependent on the sheet path for the same component
 CSCH_SCREENSContainer class that holds multiple SCH_SCREEN objects in a hierarchy
 CSCH_SHEET_PATHS
 CSCH_SHEETS
 CSCHLIB_FILTER
 CSCOPED_SET_RESET< VAL_TYPE >RAII class that sets an value at construction and resets it to the original value at destruction
 CScopedLockAn exception-safe scoped lock-keeper
 CSEG
 CSEG_NORMALS
 CPOLY_GRID_PARTITION::segHash
 CSHAPE_POLY_SET::SEGMENT_ITERATOR_TEMPLATE< T >Class SEGMENT_ITERATOR_TEMPLATE
 CSEGMENT_WITH_NORMALS
 CPOLY_GRID_PARTITION::segsEqual
 CSELECTION_COLORS
 CSELECTION_CONDITIONSClass that groups generic conditions for selected items
 CSETTINGSClass TOOL_SETTINGS
 CSGCOLOR
 CSGNODEClass SGNODE represents the base class of all Scene Graph nodes
 CSGPOINT
 CSGVECTOR
 CKIGFX::SHADERClass SHADER provides the access to the OpenGL shaders
 CSHAPEClass SHAPE
 CSHAPE_INDEX_LIST< T, >::SHAPE_ENTRY
 CSHAPE_FILE_IOClass SHAPE_FILE_IO
 CSHAPE_INDEX< T >
 CSHAPE_INDEX_LIST< T, >
 CSHAPE_INDEX_LIST< PNS::ITEM * >
 CSheetUndoList
 CAUTOPLACER::SIDE_AND_COLL
 CAUTOPLACER::SIDE_AND_NPINS
 CPNS::SIZES_SETTINGS
 CSMATERIAL
 CSMESHPer-vertex normal/color/texcoors structure
 CSPICE_ITEMStructure to represent a schematic component in the Spice simulation
 CSPICE_SIMULATOR
 CSPICE_VALUE

Helper class to handle Spice way of expressing values (e.g. 10.5 Meg)

 CPNS::SHOVE::SPRINGBACK_TAG
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::StackElement
 CStackNode
 CCOMPONENT_TREE::STATEStructure storing state of the component tree widget
 CRTree< DATATYPE, ELEMTYPE, NUMDIMS, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Statistics
 CKIGFX::STROKE_FONTClass STROKE_FONT implements stroke font drawing
 CStructColors
 Csums_s
 CSutherlandHodgman
 Cp2t::Sweep
 Cp2t::SweepContext
 CSYNC_QUEUE< T >Synchronized, locking queue
 CSYNC_QUEUE< std::unique_ptr< IO_ERROR > >
 CSYNC_QUEUE< wxString >
 CTEMPLATE_FIELDNAMEStruct TEMPLATE_FIELDNAME holds a name of a component's field, field value, and default visibility
 CTEMPLATES
 CKIGFX::OPENGL_GAL::TessParams
 CTEXT_EFFECTSStruct TEXT_EFFECTS is a bucket for text effects
 CKIGFX::GAL::TEXT_PROPERTIES
 CTICK_FORMATDescription of a "tick format" for a scale factor - how many ticks there are between medium/major ticks and how each scale relates to the last one
 CmpScaleBase::TickLabel
 CPNS::TIME_LIMIT
 CTITLE_BLOCKClass TITLE_BLOCK holds the information shown in the lower right corner of a plot, printout, or editing view
 CNumericEvaluator::Token
 CnumEval::NumericEvaluator::Token
 CnumEval::NumericEvaluator::TokenStat
 CNumericEvaluator::TokenStat
 CnumEval::TokenType
 CnumEval::numEval::TokenType
 CTOOL_ACTIONClass TOOL_ACTION
 CTOOL_BASEClass TOOL_BASE
 CTOOL_EVENTClass TOOL_EVENT
 CTOOL_EVENT_LISTClass TOOL_EVENT_LIST
 CTOOL_MANAGERClass TOOL_MANAGER
 CTOOL_MENUClass TOOL_MENU
 CTOOL_MANAGER::TOOL_STATEStruct describing the current execution state of a TOOL
 CPNS::TOPOLOGY
 CCRectPlacement::TPos
 CTRACE_DESC

Trace descriptor class

 CTRACKS_CLEANER
 CTRANSFORMClass for tranforming drawing coordinates for a wxDC device context
 CTRANSFORM_PRM
 CSHAPE_POLY_SET::TRIANGULATED_POLYGON::TRI
 Cp2t::Triangle
 CSHAPE_POLY_SET::TRIANGULATED_POLYGON
 Ched::TRIANGULATIONTriangulation class for the half-edge data structure with adaption to TTL
 Cttl::TRIANGULATION_HELPER
 CRN_NET::TRIANGULATOR_STATE
 CTRIPLETSegment (element) of our XPATH into the Eagle XML document tree in PTREE form
 Ched::TTLtraitsTraits class (static struct) for the half-edge data structure
 CKIGFX::PREVIEW::TWO_POINT_GEOMETRY_MANAGERClass TWO_POINT_GEOMETRY_MANAGER
 Cunary_function
 CUNDO_REDO_CONTAINERClass UNDO_REDO_CONTAINER is a holder to handle alist of undo (or redo) command
 CUTF8::uni_iterClass uni_iter is a non-mutating iterator that walks through unicode code points in the UTF8 encoded string
 CUNIQUE_STRINGSClass UNIQUE_STRINGS tracks unique wxStrings and is useful in telling if a string has been seen before
 CUNIT_BINDER
 CKIGFX::VIEW::updateItemsColor
 CUTF8Class UTF8 is an 8 bit string that is assuredly encoded in UTF8, and supplies special conversion support to and from wxString, to and from std::string, and has non-mutating iteration over unicode characters
 CKIGFX::VC_SETTINGS

Structure to keep VIEW_CONTROLS settings for easy store/restore operations

 CVECTOR2< T >Class VECTOR2 defines a general 2D-vector/point
 CVECTOR2< double >
 CVECTOR2< int >
 CVECTOR2< unsigned int >
 CVECTOR2_TRAITS< T >Class VECTOR2_TRAITS traits class for VECTOR2
 CVECTOR2_TRAITS< int >
 CMODULE_3D_SETTINGS::VECTOR3D
 CKIGFX::VERTEX

Data structure for vertices {X,Y,Z,R,G,B,A,shader&param}

 CKIGFX::VERTEX_CONTAINER
 CSHAPE_POLY_SET::VERTEX_INDEXStruct VERTEX_INDEX
 CKIGFX::VERTEX_ITEM
 CKIGFX::VERTEX_MANAGER
 CVIA_DIMENSIONStruct VIA_DIMENSION is a small helper container to handle a stock of specific vias each with unique diameter and drill sizes in the BOARD class
 CKIGFX::VIEWClass VIEW
 CKIGFX::VIEW_CONTROLSClass VIEW_CONTROLS is an interface for classes handling user events controlling the view behaviour (such as zooming, panning, mouse grab, etc.)
 CKIGFX::VIEW_ITEMClass VIEW_ITEM - is an abstract base class for deriving all objects that can be added to a VIEW
 CKIGFX::VIEW_ITEM_DATA
 CKIGFX::VIEW::VIEW_LAYER
 CVRML_COLOR
 CWDO_ENABLE_DISABLEToggle a window's "enable" status to disabled, then enabled on destruction
 CWORKSHEET_DATAITEM
 CWORKSHEET_LAYOUTWORKSHEET_LAYOUT handles the graphic items list to draw/plot the title block and other items (page references ..
 CWORKSHEET_LAYOUT_IO
 CWS_DRAW_ITEM_BASE
 CWS_DRAW_ITEM_LIST
 CWX_EVENT_LOOP
 CWX_LOGLEVEL_CONTEXTContext class to set wx loglevel for a block, and always restore it at the end
 CZONE_CONTAINER::WX_VECTOR_CONVERTERUnion to handle conversion between references to wxPoint and to VECTOR2I
 CwxApp
 CwxAuiPaneInfo
 CwxBitmapComboBox
 CwxClientData
 CwxComboBox
 CwxDataViewModel
 CwxDialog
 CwxEvent
 CwxEvtHandler
 CwxFindReplaceData
 CwxFrame
 CwxGLCanvas
 CwxGridTableBase
 CwxHtmlListBox
 CwxHtmlParser
 CwxHtmlTagHandler
 CwxHtmlWindow
 CwxListCtrl
 CwxListView
 CwxMenu
 CwxMiniFrame
 CwxObject
 CwxOwnerDrawnComboBox
 CwxPanel
 CwxPathList
 CwxPoint
 CwxPopupWindow
 CwxPreviewFrame
 CwxPrintout
 CwxProcess
 CwxProgressDialog
 CwxSashLayoutWindow
 CwxScrolledCanvas
 CwxScrolledWindow
 CwxTextCtrl
 CwxTextValidator
 CwxThread
 CwxTreeCtrl
 CwxTreeItemData
 CwxTreeListCtrl
 CwxWindow
 CwxWizard
 CwxXmlNode
 CX2_ATTRIBUTEClass X2_ATTRIBUTE The attribute value consists of a number of substrings separated by a comma
 CXPATHClass XPATH keeps track of what we are working on within a PTREE
 CnumEval::YYMINORTYPE
 CnumEval::yyParser
 CnumEval::yyStackEntry
 CZONE_FILLER
 CZONE_SETTINGSClass ZONE_SETTINGS handles zones parameters
 CBoundary