gettin a snapshot of the screen?

i am tryin to get a snapshot of my scene. i am using glreadpixels to do that and storing it in an array. later when i need to show the snapshot im using gldrawpixels. i am not sure if im using the right approach. is there any other way i can do it. if my approach is right, what other parameters and functions do i need to take care of or call.
thank u

It would probably be faster to take the screenshot data, load it as a texture, then draw it on a full screen quad. You may have to be carefull about what filtering modes you set though.