File indexing completed on 2024-03-24 03:46:45
0001 #include <iostream> 0002 #include <cstdlib> 0003 0004 #include "HTMesh.h" 0005 #include "MeshBuffer.h" 0006 0007 MeshBuffer::MeshBuffer(HTMesh *mesh) 0008 { 0009 m_size = 0; 0010 m_error = 0; 0011 maxSize = mesh->size(); 0012 m_buffer = (Trixel *)malloc(sizeof(Trixel) * maxSize); 0013 0014 if (m_buffer == nullptr) 0015 { 0016 fprintf(stderr, "MeshBuffer: Could not allocate buffer sized %d\n", maxSize * (int)sizeof(Trixel)); 0017 exit(1); 0018 } 0019 } 0020 0021 MeshBuffer::~MeshBuffer() 0022 { 0023 free(m_buffer); 0024 } 0025 0026 int MeshBuffer::append(Trixel trixel) 0027 { 0028 if (m_size >= maxSize) 0029 { 0030 m_error++; 0031 return 0; 0032 } 0033 m_buffer[m_size++] = trixel; 0034 return 1; 0035 } 0036 0037 void MeshBuffer::fill() 0038 { 0039 for (Trixel i = 0; i < (int)maxSize; i++) 0040 { 0041 m_buffer[i] = i; 0042 } 0043 m_size = maxSize; 0044 }