00001 #ifndef ARENDERTHREAD_H
00002 #define ARENDERTHREAD_H
00003
00004
00005 #include "arender.inc"
00006 #include "filethread.inc"
00007 #include "virtualconsole.h"
00008
00009 class VirtualAConsole : public VirtualConsole
00010 {
00011 public:
00012 VirtualAConsole(RenderEngine *renderengine, ARender *arender);
00013 virtual ~VirtualAConsole();
00014
00015 int set_transport(int reverse, float speed);
00016 void get_playable_tracks();
00017
00018
00019 int process_buffer(int buffer,
00020 int64_t input_len,
00021 int64_t input_position,
00022 int64_t absolute_position);
00023
00024 int process_buffer(int64_t input_len,
00025 int64_t input_position,
00026 int last_buffer,
00027 int64_t absolute_position);
00028
00029 void process_asynchronous();
00030
00031
00032 int init_rendering(int duplicate);
00033
00034 VirtualNode* new_entry_node(Track *track,
00035 Module *module,
00036 int track_number);
00037
00038
00039 int send_last_output_buffer();
00040
00041
00042
00043 double *output_temp;
00044 int output_allocation;
00045
00046 ARender *arender;
00047 };
00048
00049
00050 #endif