BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html 00002 #ifndef __BST_SAMPLE_EDITOR_H__ 00003 #define __BST_SAMPLE_EDITOR_H__ 00004 00005 #include "bstqsampler.hh" 00006 #include "bstplayback.hh" 00007 00008 #ifdef __cplusplus 00009 extern "C" { 00010 #endif /* __cplusplus */ 00011 00012 00013 /* --- Gtk+ type macros --- */ 00014 #define BST_TYPE_SAMPLE_EDITOR (bst_sample_editor_get_type ()) 00015 #define BST_SAMPLE_EDITOR(object) (GTK_CHECK_CAST ((object), BST_TYPE_SAMPLE_EDITOR, BstSampleEditor)) 00016 #define BST_SAMPLE_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), BST_TYPE_SAMPLE_EDITOR, BstSampleEditorClass)) 00017 #define BST_IS_SAMPLE_EDITOR(object) (GTK_CHECK_TYPE ((object), BST_TYPE_SAMPLE_EDITOR)) 00018 #define BST_IS_SAMPLE_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), BST_TYPE_SAMPLE_EDITOR)) 00019 #define BST_SAMPLE_EDITOR_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), BST_TYPE_SAMPLE_EDITOR, BstSampleEditorClass)) 00020 00021 00022 /* --- structures & typedefs --- */ 00023 typedef struct _BstSampleEditor BstSampleEditor; 00024 typedef struct _BstSampleEditorClass BstSampleEditorClass; 00025 struct _BstSampleEditor 00026 { 00027 GtkVBox parent_object; 00028 00029 SfiProxy esample; 00030 guint n_channels; 00031 00032 GtkWidget *main_vbox; 00033 GtkAdjustment *zoom_adjustment; 00034 GtkAdjustment *vscale_adjustment; 00035 GtkEntry *sstart; 00036 GtkEntry *send; 00037 00038 BstQSampler **qsampler; 00039 GtkWidget *popup; 00040 00041 BstPlayBackHandle *play_back; 00042 }; 00043 struct _BstSampleEditorClass 00044 { 00045 GtkVBoxClass parent_class; 00046 }; 00047 00048 00049 /* --- prototypes --- */ 00050 GtkType bst_sample_editor_get_type (void); 00051 GtkWidget* bst_sample_editor_new (SfiProxy sample); 00052 void bst_sample_editor_set_sample (BstSampleEditor *sample_editor, 00053 SfiProxy editable_sample); 00054 void bst_sample_editor_rebuild (BstSampleEditor *sample_editor); 00055 00056 00057 #ifdef __cplusplus 00058 } 00059 #endif /* __cplusplus */ 00060 00061 #endif /* __BST_SAMPLE_EDITOR_H__ */