forked from opensourceBIM/BIMserver
-
Notifications
You must be signed in to change notification settings - Fork 0
Serializer Plugin
Ruben de Laat edited this page Jul 10, 2013
·
5 revisions
A serializer serializes an object model to a stream of data. Among the default serializers are: IFC2x3, IfcXml, CityGML and others. Most serializers will output a textbased format but that is not required.
Serializer plugins must implement SerializerPlugin interface
public interface SerializerPlugin extends Plugin {
/**
* @return A serializer
*/
Serializer createSerializer(PluginConfiguration plugin);
/**
* @return Whether this plugin will be needing geometry
*/
boolean needsGeometry();
}
public interface Serializer {
void init(IfcModelInterface model, ProjectInfo projectInfo, PluginManager pluginManager, RenderEnginePlugin renderEnginePlugin, boolean normalizeOids) throws SerializerException;
void writeToFile(File file) throws SerializerException;
byte[] getBytes();
IfcModelInterface getModel();
InputStream getInputStream() throws IOException;
void writeToOutputStream(OutputStream outputStream) throws SerializerException;
void reset();
}
You can subclass EmfSerializer so you don't have to implement all methods.
You can subclass AbstractGeometrySerializer if your serializer is going to need triangulated geometry.
Deployment
Developers
- Service Interfaces
- Clients
-
Plugin Development
- [Serializer Plugin](https://github.com/opensourceBIM/BIMserver/wiki/Serializer Plugin)
- [Deserializer Plugin](https://github.com/opensourceBIM/BIMserver/wiki/Deserializer Plugin)
- Model Compare Plugin
- Model Merge Plugin
- Query Engine Plugin
- Render Engine Plugin
- ObjectIDM Plugin
- Schema Plugin
- Service Plugin
BIMServer Developers
- Eclipse
- Eclipse Modeling Framework
- Embedding
- Terminology
- Database/Versioning
- IFC STEP Encoding
- Communication
General