/usr/include/bse/bseengineutils.h is in libbse-dev 0.7.4-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | /* BSE Engine - Flow module operation engine
* Copyright (C) 2001, 2002, 2003, 2004 Tim Janik
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* A copy of the GNU Lesser General Public License should ship along
* with this library; if not, see http://www.gnu.org/copyleft/.
*/
#ifndef __BSE_ENGINE_UTIL_H__
#define __BSE_ENGINE_UTIL_H__
#include <bse/bseenginenode.h>
G_BEGIN_DECLS
/* --- UserThread --- */
void bse_engine_reinit_utils (void);
void _engine_free_trans (BseTrans *trans);
BseOStream* _engine_alloc_ostreams (guint n);
#if 0 /* bseengine.h: */
void bse_engine_user_thread_collect (void);
gfloat* bse_engine_const_values (gfloat value);
#endif
/* --- MasterThread --- */
void _engine_recycle_const_values (gboolean nuke_all);
void _engine_node_collect_jobs (EngineNode *node);
/* master node list */
void _engine_mnl_remove (EngineNode *node);
void _engine_mnl_node_changed (EngineNode *node);
void _engine_mnl_integrate (EngineNode *node);
#define BSE_ENGINE_MNL_UNSCHEDULED_TJOB_NODE(node) (!(node)->sched_tag && ((node)->flow_jobs || (node)->probe_jobs))
EngineNode* _engine_mnl_head (void);
/* communication routines for threads:
* UserThread - main application
* MasterThread - op engine control thread
* SlaveThread - op engine calculation threads
*
* these functions are for _internal_ use of bseengine*.c implementations
*/
/* --- job transactions --- */
/* UserThread */
guint64 _engine_enqueue_trans (BseTrans *trans);
BseTrans* _engine_collect_trans (void);
void _engine_wait_on_trans (void);
/* MasterThread */
BseJob* _engine_pop_job (gboolean update_commit_stamp);
gboolean _engine_job_pending (void);
/* --- node processing queue --- */
void _engine_set_schedule (EngineSchedule *schedule);
void _engine_unset_schedule (EngineSchedule *schedule);
EngineNode* _engine_pop_unprocessed_node (void);
void _engine_push_processed_node (EngineNode *node);
SfiRing* _engine_pop_unprocessed_cycle (void);
void _engine_push_processed_cycle (SfiRing *cycle);
void _engine_wait_on_unprocessed (void);
G_END_DECLS
#endif /* __BSE_ENGINE_UTIL_H__ */
|