GrpcPrint/PrintS/job/H3DFileProcessor.h

37 lines
1.2 KiB
C++

#pragma once
#include "FileProcessor.h"
#include "H3DMetaData.h"
class H3DFileProcessor : public FileProcessor
{
public:
H3DFileProcessor();
~H3DFileProcessor();
int Process(string jobfile);
int GetCurrentLayerIndex(void) { return GetLayerIndex(m_MetaData.GetCurrentLayer()); }
int GetPreviewLayerIndex(void) { return GetLayerIndex(m_MetaData.GetPreviewLayer()); }
MetaData* GetMetaData() {
return &m_MetaData; }
string GetJobTitle() { return m_MetaData.GetJobTitle(); }
string GetMaterialName() { return m_MetaData.GetMaterial(); }
double GetLayerThickness() { return *m_MetaData.GetLayerThickness(); }
unsigned int GetLayerCount() { return m_MetaData.GetLayerCount(); }
int GetComponentCount() { return m_MetaData.GetComponentCount(); }
MetaData::Layer* GetLayer(unsigned int index) { return m_MetaData.GetLayer(index); }
int GetLayerIndex(MetaData::Layer* layer) { return layer->index; }
string GetJobUid() { return m_MetaData.GetJobUid(); }
FileType GetFileType() { return FT_H3D; }
void UpdateFile();
private:
string ReadStringFromStream(ifstream* ifs);
struct order {
uint64_t id;
int scanOrder;
};
private:
H3DMetaData m_MetaData;
ExtCfg* m_ExtCfg;
};