* Code style changed in class GraphicsDriver and and

child classes
* Removed namespace handling for Metrowerks compiler
* Initialize all fields in constructor


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39765 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Michael Pfeiffer
2010-12-08 10:22:40 +00:00
parent 9028c687fb
commit fefd3ba588
18 changed files with 871 additions and 793 deletions
+105 -71
View File
@@ -6,6 +6,7 @@
#ifndef __GRAPHICSDRIVER_H
#define __GRAPHICSDRIVER_H
#include "JobData.h"
#include "PrinterData.h"
#include "PrintProcess.h"
@@ -13,137 +14,170 @@
#include "Transport.h"
#include "StatusWindow.h"
class BView;
class BBitmap;
class BMessage;
class PrinterData;
class PrinterCap;
enum {
kGDFRotateBandBitmap = 1
};
class GraphicsDriver {
public:
GraphicsDriver(BMessage *, PrinterData *, const PrinterCap *);
virtual ~GraphicsDriver();
const JobData *getJobData(BFile *spoolFile);
BMessage *takeJob(BFile *spoolFile, uint32 flags = 0);
static BPoint getScale(int32 nup, BRect physicalRect, float scaling);
static BPoint getOffset(int32 nup, int index, JobData::Orientation orientation, const BPoint *scale,
BRect scaledPhysicalRect, BRect scaledPrintableRect, BRect physicalRect);
GraphicsDriver(BMessage* message, PrinterData* printerData,
const PrinterCap *printerCap);
virtual ~GraphicsDriver();
const JobData* GetJobData(BFile* spoolFile);
BMessage* TakeJob(BFile* spoolFile, uint32 flags = 0);
static BPoint GetScale(int32 nup, BRect physicalRect, float scaling);
static BPoint GetOffset(int32 nup, int index,
JobData::Orientation orientation, const BPoint* scale,
BRect scaledPhysicalRect, BRect scaledPrintableRect,
BRect physicalRect);
protected:
virtual bool startDoc();
virtual bool startPage(int page_number);
virtual bool nextBand(BBitmap *bitmap, BPoint *offset);
virtual bool endPage(int page_number);
virtual bool endDoc(bool success);
GraphicsDriver(const GraphicsDriver &);
void writeSpoolData(const void *buffer, size_t size) throw(TransportException);
void writeSpoolString(const char *buffer, ...) throw(TransportException);
void writeSpoolChar(char c) throw(TransportException);
GraphicsDriver& operator = (const GraphicsDriver &);
static void convert_to_rgb24(void* src, void* dst, int width, color_space cs);
static void convert_to_gray(void* src, void* dst, int width, color_space cs);
virtual bool StartDocument();
virtual bool StartPage(int page_number);
virtual bool NextBand(BBitmap* bitmap, BPoint* offset);
virtual bool EndPage(int page_number);
virtual bool EndDocument(bool success);
const JobData *getJobData() const;
const PrinterData *getPrinterData() const;
const PrinterCap *getPrinterCap() const;
const SpoolMetaData *getSpoolMetaData() const;
int getProtocolClass() const;
void WriteSpoolData(const void* buffer, size_t size)
throw (TransportException);
void WriteSpoolString(const char* buffer, ...)
throw (TransportException);
void WriteSpoolChar(char c)
throw (TransportException);
int getPageWidth() const;
int getPageHeight() const;
int getBandWidth() const;
int getBandHeight() const;
int getPixelDepth() const;
static void ConvertToRGB24(const void* src, void* dst, int width,
color_space cs);
static void ConvertToGray(const void* src, void* dst, int width,
color_space cs);
GraphicsDriver(const GraphicsDriver &);
GraphicsDriver &operator = (const GraphicsDriver &);
const JobData* GetJobData() const;
const PrinterData* GetPrinterData() const;
const PrinterCap* GetPrinterCap() const;
const SpoolMetaData* GetSpoolMetaData() const;
int GetProtocolClass() const;
int GetPageWidth() const;
int GetPageHeight() const;
int GetBandWidth() const;
int GetBandHeight() const;
int GetPixelDepth() const;
private:
bool setupData(BFile *file);
void setupBitmap();
void cleanupData();
void cleanupBitmap();
bool printPage(PageDataList *pages);
bool collectPages(SpoolData *spool_data, PageDataList *pages);
bool skipPages(SpoolData *spool_data);
bool printDocument(SpoolData *spool_data);
bool printJob(BFile *file);
static void rgb32_to_rgb24(void* src, void* dst, int width);
static void cmap8_to_rgb24(void* src, void* dst, int width);
static uint8 gray(uint8 r, uint8 g, uint8 b);
static void rgb32_to_gray(void* src, void* dst, int width);
static void cmap8_to_gray(void* src, void* dst, int width);
bool _SetupData(BFile* file);
void _SetupBitmap();
void _CleanupData();
void _CleanupBitmap();
bool _PrintPage(PageDataList* pages);
bool _CollectPages(SpoolData* spoolData, PageDataList* pages);
bool _SkipPages(SpoolData* spoolData);
bool _PrintDocument(SpoolData* spoolData);
bool PrintJob(BFile* file);
static void _ConvertRGB32ToRGB24(const void* src, void* dst, int width);
static void _ConvertCMAP8ToRGB24(const void* src, void* dst, int width);
static uint8 _ConvertToGray(uint8 r, uint8 g, uint8 b);
static void _ConvertRGB32ToGray(const void* src, void* dst, int width);
static void _ConvertCMAP8ToGray(const void* src, void* dst, int width);
uint32 fFlags;
BMessage *fMsg;
BView *fView;
BBitmap *fBitmap;
Transport *fTransport;
JobData *fOrgJobData;
JobData *fRealJobData;
PrinterData *fPrinterData;
const PrinterCap *fPrinterCap;
SpoolMetaData *fSpoolMetaData;
uint32 fFlags;
BMessage* fMessage;
BView* fView;
BBitmap* fBitmap;
Transport* fTransport;
JobData* fOrgJobData;
JobData* fRealJobData;
PrinterData* fPrinterData;
const PrinterCap* fPrinterCap;
SpoolMetaData* fSpoolMetaData;
int fPageWidth;
int fPageHeight;
int fBandWidth;
int fBandHeight;
int fPixelDepth;
int fBandCount;
int fInternalCopies;
int fPageWidth;
int fPageHeight;
int fBandWidth;
int fBandHeight;
int fPixelDepth;
int fBandCount;
int fInternalCopies;
uint32 fPageCount;
uint32 fPageCount;
StatusWindow *fStatusWindow;
StatusWindow* fStatusWindow;
};
inline const JobData *GraphicsDriver::getJobData() const
inline const JobData*
GraphicsDriver::GetJobData() const
{
return fRealJobData;
}
inline const PrinterData *GraphicsDriver::getPrinterData() const
inline const PrinterData*
GraphicsDriver::GetPrinterData() const
{
return fPrinterData;
}
inline const PrinterCap *GraphicsDriver::getPrinterCap() const
inline const PrinterCap*
GraphicsDriver::GetPrinterCap() const
{
return fPrinterCap;
}
inline const SpoolMetaData *GraphicsDriver::getSpoolMetaData() const
inline const SpoolMetaData*
GraphicsDriver::GetSpoolMetaData() const
{
return fSpoolMetaData;
}
inline int GraphicsDriver::getProtocolClass() const
inline int
GraphicsDriver::GetProtocolClass() const
{
return fPrinterData->getProtocolClass();
}
inline int GraphicsDriver::getPageWidth() const
inline int
GraphicsDriver::GetPageWidth() const
{
return fPageWidth;
}
inline int GraphicsDriver::getPageHeight() const
inline int
GraphicsDriver::GetPageHeight() const
{
return fPageHeight;
}
inline int GraphicsDriver::getBandWidth() const
inline int
GraphicsDriver::GetBandWidth() const
{
return fBandWidth;
}
inline int GraphicsDriver::getBandHeight() const
inline int
GraphicsDriver::GetBandHeight() const
{
return fBandHeight;
}
#endif /* __GRAPHICSDRIVER_H */