CelestiaDSO.mm
上传用户:center1979
上传日期:2022-07-26
资源大小:50633k
文件大小:1k
源码类别:

OpenGL

开发平台:

Visual C++

  1. //
  2. //  CelestiaDSO.mm
  3. //  celestia
  4. //
  5. //  Created by Da Woon Jung on 12/30/06.
  6. //  Copyright 2006 Chris Laurel. All rights reserved.
  7. //
  8. #import "CelestiaDSO.h"
  9. #import "CelestiaAppCore.h"
  10. #import "CelestiaAppCore_PrivateAPI.h"
  11. #import "NSString_ObjCPlusPlus.h"
  12. @implementation CelestiaDSO
  13. -(id)initWithDSO:(DeepSkyObject*)aDSO
  14. {
  15.     self = [super init];
  16.     _data = [[NSValue alloc] initWithBytes:reinterpret_cast<void*>(&aDSO) objCType:@encode(DeepSkyObject*)];
  17.     return self;
  18. }
  19. -(DeepSkyObject*)DSO
  20. {
  21.     return reinterpret_cast<DeepSkyObject*>([_data pointerValue]);
  22. }
  23. -(void)dealloc
  24. {
  25.     if (_data != nil) {
  26.         [_data release];
  27.         _data = nil;
  28.     }
  29.     [super dealloc];
  30. }
  31. -(NSString*)type
  32. {
  33.     return [NSString stringWithStdString: [self DSO]->getType()];
  34. }
  35. -(NSString *)name
  36. {
  37.     return [NSString stringWithStdString:[[CelestiaAppCore sharedAppCore] appCore]->getSimulation()->getUniverse()->getDSOCatalog()->getDSOName([self DSO])];
  38. }
  39. @end