--- 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


Reply via email to