KiCad PCB EDA Suite
pcm.h File Reference
#include "core/wx_stl_compat.h"
#include "pcm_data.h"
#include "widgets/wx_progress_reporters.h"
#include <iostream>
#include <map>
#include <nlohmann/json-schema.hpp>
#include <tuple>
#include <unordered_map>
#include <unordered_set>
#include <vector>
#include <wx/wx.h>

Go to the source code of this file.

Classes

class  PLUGIN_CONTENT_MANAGER
 Main class of Plugin and Content Manager subsystem. More...
 

Typedefs

typedef std::vector< std::pair< wxString, wxString > > STRING_PAIR_LIST
 
typedef std::vector< std::tuple< wxString, wxString, wxString > > STRING_TUPLE_LIST
 

Enumerations

enum  PCM_PACKAGE_STATE {
  PPS_AVAILABLE = 0, PPS_UNAVAILABLE = 1, PPS_INSTALLED = 2, PPS_PENDING_INSTALL = 3,
  PPS_PENDING_UNINSTALL = 4
}
 
enum  PCM_PACKAGE_ACTION { PPA_INSTALL = 0, PPA_UNINSTALL = 1 }
 

Functions

const std::unordered_set< wxString > PCM_PACKAGE_DIRECTORIES ({ wxT("plugins"), wxT("footprints"), wxT("3dmodels"), wxT("symbols"), wxT("resources"), wxT("colors"), })
 < Contains list of all valid directories that get extracted from a package archive More...
 

Typedef Documentation

◆ STRING_PAIR_LIST

typedef std::vector<std::pair<wxString, wxString> > STRING_PAIR_LIST

Definition at line 70 of file pcm.h.

◆ STRING_TUPLE_LIST

typedef std::vector<std::tuple<wxString, wxString, wxString> > STRING_TUPLE_LIST

Definition at line 71 of file pcm.h.

Enumeration Type Documentation

◆ PCM_PACKAGE_ACTION

Enumerator
PPA_INSTALL 
PPA_UNINSTALL 

Definition at line 63 of file pcm.h.

64 {
65  PPA_INSTALL = 0,
66  PPA_UNINSTALL = 1
67 };

◆ PCM_PACKAGE_STATE

Enumerator
PPS_AVAILABLE 
PPS_UNAVAILABLE 
PPS_INSTALLED 
PPS_PENDING_INSTALL 
PPS_PENDING_UNINSTALL 

Definition at line 52 of file pcm.h.

Function Documentation

◆ PCM_PACKAGE_DIRECTORIES()

const std::unordered_set<wxString> PCM_PACKAGE_DIRECTORIES ( { wxT("plugins"), wxT("footprints"), wxT("3dmodels"), wxT("symbols"), wxT("resources"), wxT("colors"), }  )

< Contains list of all valid directories that get extracted from a package archive

Package states Package is available if it is not installed and there is a compatible version Package is unavailable if it is not installed and there are no compatible versions Pending states are intermediary when (un)installation is scheduled but not yet performed

Referenced by PCM_TASK_MANAGER::deletePackageDirectories(), PCM_TASK_MANAGER::extract(), and PLUGIN_CONTENT_MANAGER::PLUGIN_CONTENT_MANAGER().