--- In [email protected], "cesco12342000" <[EMAIL PROTECTED]> wrote: > > misunderstanding. > Non sono stato capace di trovare il gruppo winrad su yahoo.
Cesco, ok, I see what you meant in your previous message. Well, this started as the SDRadio/Winrad group, then a more specific group just for Winrad was created. Due to an error in the way it was created, it requires an invitation to become a member. To eliminate this, I would need to cancel and to re-create the group... I tried to send you the needed invitation, but you have a Yahoo profile set to automatically refuse invitations, so if you want to be a member of the Winrad group, you must relax that setting. > spec: InitHW(char *name, char *model, int& index) > "int& index" = "int* index" ? MSVC doesent understand int& here. The int& is a construct of the C++ language, meaning that the parameter is passed not by value, but rather by reference. A straight C compiler (not C++) doesn't understand it. > > spec: OpenHW ... the display of its own GUI > There are already InitHW and StartHW for initialization, there is > ShowGUI for the dll's gui. What is the reason for OpenHW ? They are all called at different times and in different circumstances. InitHW() is called just once, when your DLL is loaded. It must return some vital information to Winrad. OpenHW() is called each time the user selects the external hardware as input. If, after some time, the user chooses to use the sound card as input, Winrad calls the CloseHW() API. If the user chooses again to use the external hardware, the OpenHW() is called again. It is up to the DLL writer whether to use this information or to ignore it. StartHW() is called each time the user presses the Start button on Winrad, having previously selected the external hardware as input. StopHW() is called each time the user presses the Stop button on Winrad, having previously selected the external hardware as input. ShowGUI() and HideGUI() are used by Winrad to ask the DLL to show or to hide its GUI, if it has one. For example, if you first select your hardware for input, the DLL will show its GUI. Suppose that now the user chooses either the sound card or a WAV file as input. At this point Winrad calls the HideGUI() to ask the DLL to please take away its GUI from the screen, being not anymore needed. Or, as I do with the SDR-IQ DLL, in the GUI of the DLL there is a button that makes that GUI to disappear. You don't need to have it on screen continously. But if you want to have it again displayed, you press the 'H' key on the keyboard. At that point Winrad calls the ShowGUI() API. As you see, each API has its own function, which may or may not be useful in specific cases, but there are no duplication of functionalities. You must think in general terms. The user will not continously use the Softrock. He must be able to choose e.g. a WAV file as input, or, in the case of HW that have their digitizer (e.g. Perseus, SDR-IQ, etc.) to switch between that digitizer and the sound card as mean to digitize the input. I tried to make those specs as general as possible, to cover all the possibilities, not those of the Softrock users only. 73 Alberto I2PHD
