Guitarix
gx_system::PresetFile Class Reference

#include <gx_json.h>

Inheritance diagram for gx_system::PresetFile:
Collaboration diagram for gx_system::PresetFile:

Classes

class  Position
 

Public Types

enum  { PRESET_SEP = -1, PRESET_SCRATCH = 0, PRESET_FILE = 1, PRESET_FACTORY = 2 }
 
typedef std::vector< Position >::iterator iterator
 

Public Member Functions

 PresetFile ()
 
 ~PresetFile ()
 
void readJSON_remote (JsonParser &jp)
 
void writeJSON_remote (JsonWriter &jw)
 
bool open_file (const Glib::ustring &name, const std::string &path, int tp, int flags)
 
bool create_file (const Glib::ustring &name, const std::string &path, int tp, int flags)
 
bool set_factory (const Glib::ustring &name_, const std::string &path)
 
bool readJSON (const std::string &dirpath, JsonParser &jp, bool *mtime_diff)
 
void writeJSON (JsonWriter &jw)
 
void reopen ()
 
void open (const std::string &fname)
 
void close ()
 
bool fail ()
 
bool ensure_is_current ()
 
void check_flags ()
 
const std::string & get_filename () const
 
const SettingsFileHeaderget_header ()
 
int size ()
 
void fill_names (vector< Glib::ustring > &)
 
const Glib::ustring & get_name (int n)
 
int get_index (const Glib::ustring &name)
 
JsonParsercreate_reader (int n)
 
JsonParsercreate_reader (const Glib::ustring &name)
 
JsonWritercreate_writer (int n)
 
JsonWritercreate_writer (const Glib::ustring &name)
 
JsonWritercreate_writer_at (const Glib::ustring &pos, const Glib::ustring &name)
 
PresetTransformercreate_transformer ()
 
bool clear ()
 
bool erase (const Glib::ustring &name)
 
bool rename (const Glib::ustring &name, Glib::ustring newname)
 
bool has_entry (const Glib::ustring &name)
 
void append (const Glib::ustring &name)
 
void insert_before (const Glib::ustring &nm, const Glib::ustring &newentry)
 
void insert_after (const Glib::ustring &nm, const Glib::ustring &newentry)
 
int get_flags () const
 
void set_flags (int f)
 
void set_flag (int flag, bool v)
 
int get_type () const
 
const Glib::ustring & get_name () const
 
bool set_name (const Glib::ustring &n, const std::string &newfile)
 
bool remove_file ()
 
iterator begin ()
 
iterator end ()
 
bool is_mutable () const
 
PresetFileGuiget_guiwrapper ()
 

Protected Member Functions

void open ()
 

Protected Attributes

std::string filename
 
ifstream * is
 
time_t mtime
 
SettingsFileHeader header
 
std::vector< Positionentries
 
Glib::ustring name
 
int tp
 
int flags
 

Friends

class gx_engine::GxMachineRemote
 

Detailed Description

Definition at line 299 of file gx_json.h.

Member Typedef Documentation

◆ iterator

Definition at line 321 of file gx_json.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
PRESET_SEP 
PRESET_SCRATCH 
PRESET_FILE 
PRESET_FACTORY 

Definition at line 301 of file gx_json.h.

Constructor & Destructor Documentation

◆ PresetFile()

gx_system::PresetFile::PresetFile ( )

Definition at line 866 of file gx_json.cpp.

◆ ~PresetFile()

gx_system::PresetFile::~PresetFile ( )
inline

Definition at line 323 of file gx_json.h.

Member Function Documentation

◆ append()

void gx_system::PresetFile::append ( const Glib::ustring &  name)

◆ begin()

PresetFile::iterator gx_system::PresetFile::begin ( )

Definition at line 1345 of file gx_json.cpp.

◆ check_flags()

void gx_system::PresetFile::check_flags ( )

Definition at line 1011 of file gx_json.cpp.

Referenced by open_file(), and readJSON().

◆ clear()

bool gx_system::PresetFile::clear ( )

Definition at line 1304 of file gx_json.cpp.

◆ close()

void gx_system::PresetFile::close ( )
inline

Definition at line 333 of file gx_json.h.

Referenced by ensure_is_current(), open(), and gx_system::GxSettingsBase::reorder_preset().

◆ create_file()

bool gx_system::PresetFile::create_file ( const Glib::ustring &  name,
const std::string &  path,
int  tp,
int  flags 
)

Definition at line 994 of file gx_json.cpp.

Referenced by gx_preset::GxSettings::bank_insert_new().

◆ create_reader() [1/2]

JsonParser* gx_system::PresetFile::create_reader ( const Glib::ustring &  name)
inline

Definition at line 344 of file gx_json.h.

◆ create_reader() [2/2]

◆ create_transformer()

PresetTransformer * gx_system::PresetFile::create_transformer ( )

◆ create_writer() [1/2]

JsonWriter * gx_system::PresetFile::create_writer ( const Glib::ustring &  name)

Definition at line 1265 of file gx_json.cpp.

◆ create_writer() [2/2]

JsonWriter* gx_system::PresetFile::create_writer ( int  n)
inline

◆ create_writer_at()

JsonWriter * gx_system::PresetFile::create_writer_at ( const Glib::ustring &  pos,
const Glib::ustring &  name 
)

Definition at line 1278 of file gx_json.cpp.

Referenced by gx_system::GxSettingsBase::insert_before().

◆ end()

iterator gx_system::PresetFile::end ( )
inline

Definition at line 366 of file gx_json.h.

◆ ensure_is_current()

bool gx_system::PresetFile::ensure_is_current ( )

Definition at line 1101 of file gx_json.cpp.

◆ erase()

bool gx_system::PresetFile::erase ( const Glib::ustring &  name)

Definition at line 1293 of file gx_json.cpp.

Referenced by gx_system::GxSettingsBase::erase_preset().

◆ fail()

bool gx_system::PresetFile::fail ( )

Definition at line 970 of file gx_json.cpp.

Referenced by open_file().

◆ fill_names()

void gx_system::PresetFile::fill_names ( vector< Glib::ustring > &  l)

Definition at line 1122 of file gx_json.cpp.

◆ get_filename()

◆ get_flags()

int gx_system::PresetFile::get_flags ( ) const
inline

Definition at line 358 of file gx_json.h.

Referenced by gx_preset::GxSettings::auto_save_state().

◆ get_guiwrapper()

◆ get_header()

const SettingsFileHeader & gx_system::PresetFile::get_header ( )

Definition at line 1117 of file gx_json.cpp.

Referenced by gx_system::GxSettingsBase::loadsetting().

◆ get_index()

int gx_system::PresetFile::get_index ( const Glib::ustring &  name)

◆ get_name() [1/2]

const Glib::ustring& gx_system::PresetFile::get_name ( ) const
inline

Definition at line 362 of file gx_json.h.

Referenced by create_writer().

◆ get_name() [2/2]

◆ get_type()

int gx_system::PresetFile::get_type ( ) const
inline

◆ has_entry()

bool gx_system::PresetFile::has_entry ( const Glib::ustring &  name)
inline

Definition at line 354 of file gx_json.h.

Referenced by gx_system::GxSettingsBase::load_preset().

◆ insert_after()

void gx_system::PresetFile::insert_after ( const Glib::ustring &  nm,
const Glib::ustring &  newentry 
)

◆ insert_before()

void gx_system::PresetFile::insert_before ( const Glib::ustring &  nm,
const Glib::ustring &  newentry 
)

◆ is_mutable()

bool gx_system::PresetFile::is_mutable ( ) const
inline

Definition at line 367 of file gx_json.h.

Referenced by writeJSON_remote().

◆ open() [1/2]

void gx_system::PresetFile::open ( )
protected

Definition at line 1061 of file gx_json.cpp.

Referenced by clear(), open(), readJSON(), and reopen().

◆ open() [2/2]

void gx_system::PresetFile::open ( const std::string &  fname)

Definition at line 1112 of file gx_json.cpp.

◆ open_file()

bool gx_system::PresetFile::open_file ( const Glib::ustring &  name,
const std::string &  path,
int  tp,
int  flags 
)

◆ readJSON()

bool gx_system::PresetFile::readJSON ( const std::string &  dirpath,
JsonParser jp,
bool *  mtime_diff 
)

Definition at line 1016 of file gx_json.cpp.

◆ readJSON_remote()

void gx_system::PresetFile::readJSON_remote ( JsonParser jp)

◆ remove_file()

bool gx_system::PresetFile::remove_file ( )

Definition at line 1335 of file gx_json.cpp.

Referenced by gx_system::PresetBanks::remove().

◆ rename()

bool gx_system::PresetFile::rename ( const Glib::ustring &  name,
Glib::ustring  newname 
)

Definition at line 1312 of file gx_json.cpp.

Referenced by gx_system::GxSettingsBase::rename_preset().

◆ reopen()

void gx_system::PresetFile::reopen ( )
inline

◆ set_factory()

bool gx_system::PresetFile::set_factory ( const Glib::ustring &  name_,
const std::string &  path 
)

Definition at line 954 of file gx_json.cpp.

◆ set_flag()

void gx_system::PresetFile::set_flag ( int  flag,
bool  v 
)
inline

◆ set_flags()

void gx_system::PresetFile::set_flags ( int  f)
inline

Definition at line 359 of file gx_json.h.

◆ set_name()

bool gx_system::PresetFile::set_name ( const Glib::ustring &  n,
const std::string &  newfile 
)

Definition at line 1324 of file gx_json.cpp.

Referenced by gx_system::PresetBanks::rename().

◆ size()

int gx_system::PresetFile::size ( )

◆ writeJSON()

void gx_system::PresetFile::writeJSON ( JsonWriter jw)

Definition at line 1049 of file gx_json.cpp.

Referenced by gx_preset::GxSettings::check_settings_dir().

◆ writeJSON_remote()

void gx_system::PresetFile::writeJSON_remote ( gx_system::JsonWriter jw)

Definition at line 920 of file gx_json.cpp.

Friends And Related Function Documentation

◆ gx_engine::GxMachineRemote

friend class gx_engine::GxMachineRemote
friend

Definition at line 317 of file gx_json.h.

Member Data Documentation

◆ entries

std::vector<Position> gx_system::PresetFile::entries
protected

◆ filename

◆ flags

int gx_system::PresetFile::flags
protected

◆ header

SettingsFileHeader gx_system::PresetFile::header
protected

Definition at line 312 of file gx_json.h.

Referenced by check_flags(), create_file(), get_header(), open(), readJSON(), set_factory(), and writeJSON().

◆ is

ifstream* gx_system::PresetFile::is
protected

◆ mtime

time_t gx_system::PresetFile::mtime
protected

Definition at line 311 of file gx_json.h.

Referenced by create_file(), ensure_is_current(), open(), readJSON(), set_factory(), and writeJSON().

◆ name

◆ tp

int gx_system::PresetFile::tp
protected

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