Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:02:03

0001 #ifndef MAD_API_H
0002 #define MAD_API_H
0003 
0004 /**
0005  * @file mad_api.h Calls to use for external libraries
0006  *
0007  * This is a header that can be included in external libraries that wants to 
0008  * link against the mad-x library. It was mostly needed because
0009  * we did not have clean headers before. 
0010  * 
0011  * Since that has now changed, have a look instead at the functions 
0012  * madx_start() and madx_finish() in mad_core.h, 
0013  * and pro_input() in mad_eval.h. Those provide everything
0014  * you need for a basic interface.
0015  * 
0016  * @author Yngve Inntjore Levinsen
0017  */
0018 
0019 // types
0020 
0021 struct sequence_list;
0022 
0023 // variables
0024 
0025 extern struct sequence_list* sequences;
0026 
0027 /**
0028  * @brief Get list of available sequences
0029  *
0030  * This function is part of the madextern external functions.
0031  * These are not supposed to be used by any internal mad-x code.
0032  *
0033  * This function returns a name_list structure of all currently
0034  *  available sequences. Reason we do not return sequence_list
0035  *  is that name_list are "cleaner" structures which are easier
0036  *  to access in python (currently only use-case).
0037  *
0038  */
0039 struct sequence_list* madextern_get_sequence_list(void);
0040 
0041 #endif // MAD_API_H
0042