Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

vuConvert.cpp

Go to the documentation of this file.
00001 #include "vuConvert.h"
00002 
00004 vu11122& vuConvert::convert(vu11122& dst, const vu11121& src)
00005 {
00006     vu1112 &pd = dst;
00007     const vu1112 &ps = src;
00008     pd = ps;    // this copies all member variables
00009     // copying m_Data is wrong so we have to fix it...
00010     if(dst.m_Data) {
00011         delete [] dst.m_Data;
00012         dst.m_Data = NULL;
00013     }
00014     dst.m_DataSize = dst.m_Dim1Size*dst.m_Dim2Size*dst.m_Dim3Size*2;
00015     dst.m_Data = new byte[dst.m_DataSize];
00016     word *dat = (word*) dst.m_Data;
00017     byte *sdat = src.m_Data;
00018     dword i;
00019     for(i = dst.m_Dim1Size*dst.m_Dim2Size*dst.m_Dim3Size; 
00020         i>0; i--, dat++, sdat++)
00021         *dat = (word)(*sdat);
00022 
00023     return dst;
00024 }
00025 
00027 vu11121& vuConvert::convert(vu11121& dst, const vu11122& src)
00028 {
00029     vu1112 &pd = dst;
00030     const vu1112 &ps = src;
00031     pd = ps;    // this copies all member variables
00032 
00033     // copying m_Data is wrong so we have to fix it...
00034     if(dst.m_Data) {
00035         delete [] dst.m_Data;
00036         dst.m_Data = NULL;
00037     }
00038 
00039     dst.m_DataSize = dst.m_Dim1Size*dst.m_Dim2Size*dst.m_Dim3Size;
00040     dst.m_Data = new byte[dst.m_DataSize];
00041 
00042     byte *dat = dst.m_Data;
00043     word *sdat = (word*)src.m_Data;
00044     dword i;
00045     for(i = dst.m_Dim1Size*dst.m_Dim2Size*dst.m_Dim3Size; 
00046         i>0; i--, dat++, sdat++)
00047         *dat = (byte)(*sdat);
00048 
00049     return dst;
00050 }
00051 

Generated on Wed Dec 15 21:20:33 2004 for vuVolume by  doxygen 1.3.9.1