solstice

Compute collected power and efficiencies of a solar plant
git clone git://git.meso-star.com/solstice.git
Log | Files | Refs | README | LICENSE

score.h (1666B)


      1 /* Copyright (C) 2018-2026 |Meso|Star> (contact@meso-star.com)
      2  * Copyright (C) 2016-2018 CNRS
      3  *
      4  * This program is free software: you can redistribute it and/or modify
      5  * it under the terms of the GNU General Public License as published by
      6  * the Free Software Foundation, either version 3 of the License, or
      7  * (at your option) any later version.
      8  *
      9  * This program is distributed in the hope that it will be useful,
     10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
     12  * GNU General Public License for more details.
     13  *
     14  * You should have received a copy of the GNU General Public License
     15  * along with this program. If not, see <http://www.gnu.org/licenses/>. */
     16 
     17 #ifndef SCORE_H
     18 #define SCORE_H
     19 
     20 #include <rsys/rsys.h>
     21 
     22 struct mem_allocator;
     23 struct solstice;
     24 struct solstice_args;
     25 
     26 /* Library symbol management */
     27 #if defined(SCORE_SHARED_BUILD) /* Build shared library */
     28   #define SCORE_API extern EXPORT_SYM
     29 #elif defined(SCORE_STATIC) /* Use/build static library */
     30   #define SCORE_API extern LOCAL_SYM
     31 #else /* Use shared library */
     32   #define SCORE_API extern IMPORT_SYM
     33 #endif
     34 
     35 SCORE_API res_T
     36 solstice_init
     37   (struct mem_allocator* allocator, /* May be NULL <=> use default allocator */
     38    const struct solstice_args* args,
     39    struct solstice* solstice);
     40 
     41 SCORE_API void
     42 solstice_release
     43   (struct solstice* solstice);
     44 
     45 SCORE_API res_T
     46 solstice_run
     47   (struct solstice* solstice);
     48 
     49 SCORE_API res_T
     50 solstice_args_init
     51   (struct solstice_args* args,
     52    const int argc,
     53    char** argv);
     54 
     55 SCORE_API void
     56 solstice_args_release
     57   (struct solstice_args* args);
     58 
     59 #endif /* SCORE_H */
     60