14594032dSStephan Aßmus // BitmapBuffer.h 24594032dSStephan Aßmus 3*359c905cSStephan Aßmus #include "ServerBitmap.h" 44594032dSStephan Aßmus 54594032dSStephan Aßmus #include "BitmapBuffer.h" 64594032dSStephan Aßmus 7*359c905cSStephan Aßmus // TODO: It should be more or less guaranteed that this object 8*359c905cSStephan Aßmus // is not used if InitCheck() returns an error, so the checks 9*359c905cSStephan Aßmus // in all thos functions should probably be removed... 10*359c905cSStephan Aßmus 114594032dSStephan Aßmus // constructor BitmapBuffer(ServerBitmap * bitmap)12*359c905cSStephan AßmusBitmapBuffer::BitmapBuffer(ServerBitmap* bitmap) 134594032dSStephan Aßmus : fBitmap(bitmap) 144594032dSStephan Aßmus { 154594032dSStephan Aßmus } 164594032dSStephan Aßmus 174594032dSStephan Aßmus // destructor ~BitmapBuffer()184594032dSStephan AßmusBitmapBuffer::~BitmapBuffer() 194594032dSStephan Aßmus { 20*359c905cSStephan Aßmus // We don't own the ServerBitmap 214594032dSStephan Aßmus } 224594032dSStephan Aßmus 234594032dSStephan Aßmus // InitCheck 244594032dSStephan Aßmus status_t InitCheck() const254594032dSStephan AßmusBitmapBuffer::InitCheck() const 264594032dSStephan Aßmus { 274594032dSStephan Aßmus status_t ret = B_NO_INIT; 284594032dSStephan Aßmus if (fBitmap) 29*359c905cSStephan Aßmus ret = fBitmap->IsValid() ? B_OK : B_ERROR; 304594032dSStephan Aßmus return ret; 314594032dSStephan Aßmus } 324594032dSStephan Aßmus 334594032dSStephan Aßmus // ColorSpace 344594032dSStephan Aßmus color_space ColorSpace() const354594032dSStephan AßmusBitmapBuffer::ColorSpace() const 364594032dSStephan Aßmus { 374594032dSStephan Aßmus if (InitCheck() >= B_OK) 384594032dSStephan Aßmus return fBitmap->ColorSpace(); 394594032dSStephan Aßmus return B_NO_COLOR_SPACE; 404594032dSStephan Aßmus } 414594032dSStephan Aßmus 424594032dSStephan Aßmus // Bits 434594032dSStephan Aßmus void* Bits() const444594032dSStephan AßmusBitmapBuffer::Bits() const 454594032dSStephan Aßmus { 464594032dSStephan Aßmus if (InitCheck() >= B_OK) 474594032dSStephan Aßmus return fBitmap->Bits(); 484594032dSStephan Aßmus return NULL; 494594032dSStephan Aßmus } 504594032dSStephan Aßmus 514594032dSStephan Aßmus // BytesPerRow 524594032dSStephan Aßmus uint32 BytesPerRow() const534594032dSStephan AßmusBitmapBuffer::BytesPerRow() const 544594032dSStephan Aßmus { 554594032dSStephan Aßmus if (InitCheck() >= B_OK) 564594032dSStephan Aßmus return fBitmap->BytesPerRow(); 574594032dSStephan Aßmus return 0; 584594032dSStephan Aßmus } 594594032dSStephan Aßmus 604594032dSStephan Aßmus // Width 614594032dSStephan Aßmus uint32 Width() const624594032dSStephan AßmusBitmapBuffer::Width() const 634594032dSStephan Aßmus { 644594032dSStephan Aßmus if (InitCheck() >= B_OK) 65*359c905cSStephan Aßmus return fBitmap->Width(); 664594032dSStephan Aßmus return 0; 674594032dSStephan Aßmus } 684594032dSStephan Aßmus 694594032dSStephan Aßmus // Height 704594032dSStephan Aßmus uint32 Height() const714594032dSStephan AßmusBitmapBuffer::Height() const 724594032dSStephan Aßmus { 734594032dSStephan Aßmus if (InitCheck() >= B_OK) 74*359c905cSStephan Aßmus return fBitmap->Height(); 754594032dSStephan Aßmus return 0; 764594032dSStephan Aßmus } 774594032dSStephan Aßmus 78