Esempio n. 1
0
 BOOL init_attributes(U32 number_attributes, LASattribute* attributes)
 {
   U32 i;
   clean_attributes();
   this->number_attributes = number_attributes;
   this->attributes = (LASattribute*)malloc(sizeof(LASattribute)*number_attributes);
   if (this->attributes == 0)
   {
     return FALSE;
   }
   memcpy(this->attributes, attributes, sizeof(LASattribute)*number_attributes);
   attribute_starts = (I32*)malloc(sizeof(I32)*number_attributes);
   if (attribute_starts == 0)
   {
     return FALSE;
   }
   attribute_sizes = (I32*)malloc(sizeof(I32)*number_attributes);
   if (attribute_sizes == 0)
   {
     return FALSE;
   }
   attribute_starts[0] = 0;
   attribute_sizes[0] = attributes[0].get_size();
   for (i = 1; i < number_attributes; i++)
   {
     attribute_starts[i] = attribute_starts[i-1] + attribute_sizes[i-1];
     attribute_sizes[i] = attributes[i].get_size();
   }
   return TRUE;
 };
Esempio n. 2
0
 void clean()
 {
   clean_user_data_in_header();
   clean_vlrs();
   clean_evlrs();
   clean_laszip();
   clean_lastiling();
   clean_lasoriginal();
   clean_user_data_after_header();
   clean_attributes();
   clean_las_header();
 };
Esempio n. 3
0
 ~LASattributer()
 {
   clean_attributes();
 };