MCPcopy Create free account
hub / github.com/LAStools/LAStools / demzip_I32 demzip_close_reader

Function demzip_I32 demzip_close_reader

LASlib/src/demzip_dll.cpp:4738–4788  ·  view source on GitHub ↗

---------------------------------------------------------------------------*/

Source from the content-addressed store, hash-verified

4736
4737/*---------------------------------------------------------------------------*/
4738DEMZIP_API demzip_I32
4739demzip_close_reader(
4740 demzip_POINTER pointer
4741)
4742{
4743 if (pointer == 0) return 1;
4744 demzip_dll_struct* demzip_dll = (demzip_dll_struct*)pointer;
4745 try
4746 {
4747 if (demzip_dll->reader == 0)
4748 {
4749 sprintf(demzip_dll->error, "closing reader before it was opened");
4750 return 1;
4751 }
4752
4753 if (!demzip_dll->reader->done())
4754 {
4755 sprintf(demzip_dll->error, "done of LASreadPoint failed");
4756 return 1;
4757 }
4758
4759 delete demzip_dll->reader;
4760 demzip_dll->reader = 0;
4761
4762 delete [] demzip_dll->point_items;
4763 demzip_dll->point_items = 0;
4764
4765 delete demzip_dll->streamin;
4766 demzip_dll->streamin = 0;
4767
4768 if (demzip_dll->lax_index)
4769 {
4770 delete demzip_dll->lax_index;
4771 demzip_dll->lax_index = 0;
4772 }
4773
4774 if (demzip_dll->file)
4775 {
4776 fclose(demzip_dll->file);
4777 demzip_dll->file = 0;
4778 }
4779 }
4780 catch (...)
4781 {
4782 sprintf(demzip_dll->error, "internal error in demzip_close_reader");
4783 return 1;
4784 }
4785
4786 demzip_dll->error[0] = '\0';
4787 return 0;
4788}
4789
4790#ifdef __cplusplus
4791

Callers

nothing calls this directly

Calls 1

doneMethod · 0.45

Tested by

no test coverage detected