my bitmap has all required values. The code works "almost perfect", I actually display the captured video, however, I need the color histogram and this is where I see strange values.
And the "reserved" value is NOT zero after the single frame capture!
I think I am overlooking some AVI macro to control the "reserved" value.
It looks like the AVI "bitmap" is plain RGB, not a RGBQUAD.
PS. CAVI - multimedia macros - example "capGetVideoFormat".
The docs saiz something about "..and will display it in created window".
It does and that what tru me off - there is no need to convert it to bitmap and then display it if I only want to see it in view window. OK.
However, the _grabber_CallbackProc SetImageData method copies the raw data and it gets messed up in BITMAPINFO!
What I really need is to find out the "layout" of the LPVIDEOHDR and than copy it into BITMAPINFO color map correctly.
Or better yet - do my histogram extraction on the AVI data directly.
Here is two sets of preprocessor I did not understand completely,
First one is trying to define the class if it is not already defined and
the second one is trying to define a header file if it is not already defined.
But my quesion is what is the syntax or rules for the identifier.
Why there is a underscore before the word Class and H (in second example).
The way I understand is _Class means for Class and _H means for Header.
In header case, it is all upper case. Why it that.
I understand #define, #ifndef but I am not clear about the systax for identifier.
If any body can answer my confusion or direct me to any article I will be glad.
In fact the rule is really simple: you can merely put 'almost' what you want. Preprocess is in fact far less complicated that you might think, it is really no more than text processing. In this case, the #define TEggCodeParser_Class can be used later as a kind of flag: if you check for the existance of TEggCodeParser_Class, you can remove certain part of your code from the compilation.
The second example is used to avoid including multiple time the same header file. Don't forget that both of these conditions should be terminated by a #endif. If EXAMPLE_H was already defined (because the header file was already included for example), then everything which lies between the #if !defined and the #endif will be 'discarded'.
int n = 20000;
set mode nonblocking with function call
int iMode = 1;
if i set mode to nonblocking than timeout is not called in recv().
but if i do it with mode blocking (default) than every thing is
working fine and timeout called.but i have to work with non blocking
mode so anybody can tell me how can i set timeout in nonblocking socket.
or why i dont get timeout ,i missed something plz reply.
one Suggestion re posting questions will not help you to get answers.
Now i am not sure if this will answer the problem but i will try.
1. Blocking socket and time out set.
This is ideal condition since it is a blocking call After timeout it will come out of the blocking call if nothing to receive.
2. Non blocking and time out set.
Since this is the non blocking call it will come out immediately so there is no need of timeout rather even if it is set you will not get it because if there is nothing to receive call will return..
I am not able to understand that why the constructor of A is called again after B. Or why not the same is happening after constructor of C is called.
So the compiler goes likes this...
First time it sees "new D" it
1. calls constructor of D
2. which in turn calls constructor of B (Since B if the first base class)
3. which in turn calls constructor of A (Prints "A")
4. then (Prints "B")
5. then the compiler calls constructor of C (Second base class)
6. which in turn again calls constructor of A (Prints "A")
7. then (Prints "C")
8. in the end (Prints "D")
So bottom line is unless base class constructor code executes derived class
constructor doesn't execute.
Nibu babu thomas
Microsoft MVP for VC++
Code must be written to be read, not by the compiler, but by another human being.
This is due to the fact that the base class constructor has to get called before the derived class constructor gets call. since D derives from both B and C constructor of A gets called in either of the cases
Somethings seem HARD to do, until we know how to do them. _AnShUmAn_
No. Setting the Visible property to false means you want the window to be hidden, not shown. Now, are you wanting to show or hide the window? Perhaps the removal or inclusion of the WS_VISIBLE style is what you are after.
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
Last Visit: 31-Dec-99 18:00 Last Update: 26-Oct-21 9:35