DataManager.cpp
上传用户:smdfuse
上传日期:2015-11-06
资源大小:98k
文件大小:2k
源码类别:

图形图象

开发平台:

Visual C++

  1. #include "stdafx.h"
  2. #include "DataManager.h"
  3. /************************************************************************/
  4. /* 构造函数                                                             */
  5. /************************************************************************/
  6. DataManager::DataManager()
  7. {
  8. maxIndex = 0;
  9. }
  10. DataManager::~DataManager()
  11. {
  12. // 释放所有数据
  13. }
  14. /************************************************************************/
  15. /* 添加图像数据                                                                     */
  16. /************************************************************************/
  17. ImageData *DataManager::AddData(unsigned char* data,int imgWidth,int imgHeight,int bytes,CDocument *doc)
  18. {
  19. if(data == NULL) return NULL;
  20. ImageData id;
  21. id.bytes = bytes;
  22. id.data = new unsigned char[imgWidth * imgHeight * bytes / 8];
  23. memcpy(id.data,data,sizeof(unsigned char) * imgWidth * imgHeight * bytes / 8);  // 拷贝输入的数据
  24. id.imgWidth = imgWidth;
  25. id.imgHeight = imgHeight;
  26. id.index = maxIndex;
  27. id.coreDoc = doc;
  28. id.use = 0;  // 当前使用数据
  29. switch(id.bytes)
  30. {
  31. case 8:
  32. id.format = IMAGE_FORMAT_GRAY8;
  33. break;
  34. case 24:
  35. id.format = IMAGE_FORMAT_RGB24;
  36. break;
  37. }
  38. imageList.Append(&id,sizeof(ImageData));
  39. maxIndex ++;
  40. return (ImageData*)imageList.GetLastInfo();
  41. }
  42. /************************************************************************/
  43. /* 删除一个图像                                                         */
  44. /************************************************************************/
  45. void DataManager::RemoveData(int index)
  46. {
  47. }
  48. /************************************************************************/
  49. /* 删除一个图像                                                         */
  50. /************************************************************************/
  51. void DataManager::RemoveData(ImageData *id)
  52. {
  53. // 删除一个节点上的数据
  54. }
  55. /************************************************************************/
  56. /* 获得一幅图像                                                         */
  57. /************************************************************************/
  58. ImageData* DataManager::GetData(int index)
  59. {
  60. return NULL;
  61. }