/*----------------------------------------------------------------------------*/ /* drummer.c */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* This file is part of Drummer. */ /* */ /* Drummer is free software: you can redistribute it and/or modify it */ /* under the terms of the GNU General Public License as published by */ /* the Free Software Foundation, either version 3 of the License, or */ /* (at your option) any later version. */ /* */ /* Drummer 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 General Public License for more details. */ /* */ /* You should have received a copy of the GNU General Public License */ /* along with Drummer. If not, see . */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Includes */ /*----------------------------------------------------------------------------*/ #define _DRUMMER_C_ #include /*----------------------------------------------------------------------------*/ /* DR_Init */ /*----------------------------------------------------------------------------*/ DRT_Status DR_Init() { DRT_Status status; if( ( status = DR_DataStruct_Init( DRD_LOG_WRITER_DEFAULT, DRD_SAMPLE_RATE_DEFAULT, DRD_THREAD_NUMBER_DEFAULT)) != DRS_OK) { fprintf( stderr, "Can't init data structures (%d) !", status); return( status); } return( status); } /*----------------------------------------------------------------------------*/ /* DR_DeInit */ /*----------------------------------------------------------------------------*/ DRT_Status DR_DeInit() { DRT_Status status; if( ( status = DR_DataStruct_DeInit()) != DRS_OK) { printf( "Can't deinit data structures (%d)!\n", status); return( status); } return( status); } /*----------------------------------------------------------------------------*/ /* main */ /*----------------------------------------------------------------------------*/ int main( int argc, char **argv) { DRT_Status status; DRT_Kit *kit_ptr; DRT_Id i; if( ( status = DR_Init()) != DRS_OK) { exit( -1); } if( ( status = DR_Kits_Load()) != DRS_OK) { exit( -1); } /* if( ( status = DR_Kit_Id_Find( &kit_ptr, base.Kit_DS_Ptr, 0)) != DRS_OK) // if( ( status = DR_Kit_Logical_Id_Find( &kit_ptr, base.Kit_DS_Ptr, 31)) != DRS_OK) // if( ( status = DR_Kit_Name_Find( &kit_ptr, base.Kit_DS_Ptr, "HardElectro1")) != DRS_OK) { exit( -1); } else { if( ( status = DR_Kit_Sample_Load( kit_ptr)) != DRS_OK) { exit( -1); } /* fprintf( stderr, "Before!\n"); if( ( status = DR_Kit_Sample_UnLoad( kit_ptr)) != DRS_OK) { exit( -1); } */ /* fprintf( stderr, "After!\n"); if( ( status = DR_Kit_Sample_Load( kit_ptr)) != DRS_OK) { exit( -1); } */ // } DR_Kits_Sample_Load(); /* for( i = 0; i < 1; i++) { if( ( status = DR_Kit_Logical_Id_Find( &kit_ptr, base.Kit_DS_Ptr, i)) == DRS_OK) { printf( "Loading Logical Id: (%d)\n", i); DR_Kit_Sample_Load( kit_ptr); } } */ /* if( DR_Task_Wait( &base) != DRS_OK) { printf( "DR_Task_Wait failed (%d)!\n"); exit(-1); } */ DR_LOG_INFO_0( "hello world!"); // DR_Kits_Graph_Dump( &base); /* if( ( status = DR_Kits_Dump( &base)) != DRS_OK) { exit( -1); } */ /* DR_Task_Run( &base, (DRT_Instrument *)1); DR_Task_Run( &base, (DRT_Instrument *)2); DR_Task_Run( &base, (DRT_Instrument *)3); */ // sleep( 10); /* if( ( status = DR_Tasks_Dump( &base)) != DRS_OK) { exit( -1); } if( ( status = DR_Task_Wait( &base)) != DRS_OK) { exit( -1); } */ DRT_Kit_Name *kit_name_tab; long kit_number; long kit_id; if( ( status = DR_Kits_Name_Get( &kit_name_tab, &kit_number)) != DRS_OK) { exit( -1); } else { for( kit_id = 0; kit_id < kit_number; kit_id++) { DR_LOG_INFO_4( "Kit #: (%d) Id: (%d) Logical_Id: (%d) Name: [%s]", kit_id, kit_name_tab[ kit_id].Id, kit_name_tab[ kit_id].Logical_Id, kit_name_tab[ kit_id].Name); } } if( ( status = DR_Tasks_Dump()) != DRS_OK) { exit( -1); } if( ( status = DR_Kits_Stats_Dump()) != DRS_OK) { exit( -1); } if( ( status = DR_DeInit()) != DRS_OK) { exit( -1); } exit( 0); }