BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bseeditablesample.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __BSE_EDITABLE_SAMPLE_H__
00003 #define __BSE_EDITABLE_SAMPLE_H__
00004 
00005 #include <bse/bsesuper.hh>
00006 #include <bse/gslwavechunk.hh>
00007 
00008 #ifdef __cplusplus
00009 extern "C" {
00010 #endif /* __cplusplus */
00011 
00012 
00013 /* --- object type macros --- */
00014 #define BSE_TYPE_EDITABLE_SAMPLE              (BSE_TYPE_ID (BseEditableSample))
00015 #define BSE_EDITABLE_SAMPLE(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_EDITABLE_SAMPLE, BseEditableSample))
00016 #define BSE_EDITABLE_SAMPLE_CLASS(class)      (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_EDITABLE_SAMPLE, BseEditableSampleClass))
00017 #define BSE_IS_EDITABLE_SAMPLE(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_EDITABLE_SAMPLE))
00018 #define BSE_IS_EDITABLE_SAMPLE_CLASS(class)   (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_EDITABLE_SAMPLE))
00019 #define BSE_EDITABLE_SAMPLE_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_EDITABLE_SAMPLE, BseEditableSampleClass))
00020 /* --- object flagss --- */
00021 #define BSE_EDITABLE_SAMPLE_OPENED(obj)       (BSE_EDITABLE_SAMPLE (obj)->open_count > 0)
00022 #define BSE_EDITABLE_SAMPLE_FLAGS_USHIFT        (BSE_ITEM_FLAGS_USHIFT + 0)
00023 
00024 struct BseEditableSample : BseItem {
00025   guint          open_count;
00026   GslWaveChunk  *wchunk;
00027 };
00028 struct BseEditableSampleClass : BseItemClass {
00029   void  (*changed) (BseEditableSample   *sample);
00030 };
00031 void    bse_editable_sample_set_wchunk  (BseEditableSample      *self,
00032                                          GslWaveChunk           *wchunk);
00033 #ifdef __cplusplus
00034 }
00035 #endif /* __cplusplus */
00036 #endif /* __BSE_EDITABLE_SAMPLE_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines