You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.3 KiB
58 lines
1.3 KiB
#ifndef UBCONFIG_QUOTAS_H
|
|
#define UBCONFIG_QUOTAS_H
|
|
|
|
#include "../../my_type.h"
|
|
#include "../../project_lib.h"
|
|
|
|
class Ubconfig_quota
|
|
{
|
|
private:
|
|
map_str_str* map_gui_cfg = NULL;
|
|
map_str_str* map_global_cfg = NULL;
|
|
map_str_str* map_system_cfg = NULL;
|
|
vector<string>* vec_param_names = NULL;
|
|
struct Size {
|
|
int size_0;
|
|
int size_1;
|
|
int size_2;
|
|
int size_3;
|
|
int size_4;
|
|
int size_5;
|
|
};
|
|
struct User {
|
|
bool active;
|
|
string device;
|
|
vector<string> users;
|
|
struct Size obj_size;
|
|
};
|
|
struct Group {
|
|
bool active;
|
|
string device;
|
|
vector<string> groups;
|
|
struct Size obj_size;
|
|
};
|
|
struct Prjquota {
|
|
bool active;
|
|
string device;
|
|
vector<string> prjquota_name;
|
|
struct Size obj_size;
|
|
};
|
|
struct Quotas {
|
|
struct User obj_user;
|
|
struct Group obj_group;
|
|
struct Prjquota obj_prjquota;
|
|
};
|
|
public:
|
|
Ubconfig_quota(/* args */);
|
|
~Ubconfig_quota();
|
|
void set_map_gui(map_str_str* map_gui_cfg);
|
|
void set_map_global(map_str_str* map_global_cfg);
|
|
void set_map_local(map_str_str* map_system_cfg);
|
|
void set_vec_key(vector<string>* vec_param_names);
|
|
void remove_key_to_vec(string key);
|
|
void add_key_to_vec(string key);
|
|
void format_data();
|
|
|
|
};
|
|
|
|
#endif |