IOLink
IOL_v1.6.1_release
|
IOLink is a library developed and used by Thermofisher Scientifics software teams for Images manipulation. It is designed to work as a unified data model.
A data model is the solution to problems observed in any software companies whose products:
Without any DataModel, each product can have its own reader to extract data and a copy is probably done in memory for processing. And if the result of processing must be exchanged with another product, adapters can be needed to make data compatible and a copy must probably be done again.
A DataModel is the basis to bring homogeneity into your software pipeline, and IOLink is the response to this need. The goal is to unify data access and exchange between applications, and also to avoid useless memory copies.
IOLink is part of the IOSuite project, a set of tools based on IOLink. For now, IOSuite is composed of IOLink and IOFormat, the second being a library to allow access to encoded formats using the IOLink interface.
IOLink simply provides interfaces to unify the access to data. These interfaces are generic but simple, wrappable, and can respond to most of user cases. IOLink provides a generic implementation, but you can also decide to create your own implementation from these interfaces, dedicated to your own application domain, and still remain compatible with external tools also based on IOLink.
IOLink is also interesting for its capability to handle data directly from a file or a server. It does not force you to load your whole data in memory.
This user guide is for any developers:
It details IOLink basic concepts, give an overview of available features, and offers actual code snippets.
Document is composed of following sections: