30#ifndef GERBER_JOBFILE_WRITER_H
31#define GERBER_JOBFILE_WRITER_H
33#include <nlohmann/json.hpp>
Information pertinent to a Pcbnew printed circuit board.
GERBER_JOBFILE_WRITER is a class used to create Gerber job file a Gerber job file stores info to make...
void addJSONHeader()
Add the job file header in JSON format to m_JSONbuffer.
void addJSONMaterialStackup()
Add the Material Stackup section in JSON format to m_JSONbuffer This is the ordered list of stackup l...
void addJSONFilesAttributes()
Add the Files Attributes section in JSON format to m_JSONbuffer.
nlohmann::ordered_json m_json
enum ONSIDE hasSilkLayers()
bool CreateJobFile(const wxString &aFullFilename)
Creates a Gerber job file.
void addJSONGeneralSpecs()
Add the General Specs in JSON format to m_JSONbuffer.
bool WriteJSONJobFile(const wxString &aFullFilename)
Creates an Gerber job file in JSON format.
enum ONSIDE hasSolderMasks()
virtual ~GERBER_JOBFILE_WRITER()
double mapValue(double aUiValue)
A helper function to convert a double in Pcbnew internal units to a JSON double value (in mm),...
const char * sideKeyValue(enum ONSIDE aValue)
void addJSONDesignRules()
Add the Design Rules section in JSON format to m_JSONbuffer.
std::string formatStringFromUTF32(const wxString &aText)
A helper function to convert a wxString ( therefore a Unicode text ) to a JSON compatible string (a e...
void AddGbrFile(PCB_LAYER_ID aLayer, wxString &aFilename)
add a gerber file name and type in job file list
JOBFILE_PARAMS store the list of parameters written in Gerber job file especially list of ....
wxArrayString m_GerberFileList
std::vector< PCB_LAYER_ID > m_LayerId
A pure virtual class used to derive REPORTER objects from.
PCB_LAYER_ID
A quick note on layer IDs: