X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/305dd917d2ba383e8c468c006d1d75edbc705337..ebd170a764ab9660adee464588cda1801c7986b4:/include/stg/corporations.h diff --git a/include/stg/corporations.h b/include/stg/corporations.h index cc147fc6..d5898fa7 100644 --- a/include/stg/corporations.h +++ b/include/stg/corporations.h @@ -18,25 +18,30 @@ * Author : Maxim Mamontov */ -#ifndef CORPORATIONS_H -#define CORPORATIONS_H +#pragma once #include -#include "corp_conf.h" +namespace STG +{ -class CORPORATIONS { -public: - virtual int Add(const CORP_CONF & corp) = 0; - virtual int Del(const std::string & name) = 0; - virtual int Change(const CORP_CONF & corp) = 0; - virtual bool FindCorp(const std::string & name, CORP_CONF & corp) = 0; - virtual bool CorpExists(const std::string & name) const = 0; - virtual const std::string & GetStrError() const = 0; +class Admin; +struct CorpConf; + +struct Corporations { + virtual ~Corporations() = default; + + virtual int Add(const CorpConf& corp, const Admin* admin) = 0; + virtual int Del(const std::string& name, const Admin* admin) = 0; + virtual int Change(const CorpConf& corp, const Admin* admin) = 0; + virtual bool Find(const std::string& name, CorpConf* corp) = 0; + virtual bool Exists(const std::string& name) const = 0; + virtual const std::string& GetStrError() const = 0; + virtual size_t Count() const = 0; virtual int OpenSearch() const = 0; - virtual int SearchNext(int, CORP_CONF * corp) const = 0; + virtual int SearchNext(int, CorpConf* corp) const = 0; virtual int CloseSearch(int) const = 0; }; -#endif +}