Comments (3)
this begs the question as whether we shouldn't just return the []Card
, or have a method to retrieve the n-th card (otherwise, we'd always get the first occurence of COMMENT
or HISTORY
via the Header.Get(name string)
method...
or rename the currrent Get(string)
into GetByName(string)
and introduce Get(int)
.
but Header.Cards() []Card
SGTM (carefully documenting one shouldn't mess with modifying their content.)
from fitsio.
For my use case, which basically consists of scanning all the cards in all header units of a given file and perform some actions depending on the value of some of them, Header.Cards() []Card
would be perfect and much more efficient indeed that to repeatedly call Header.Get(key)
. A note in the documentation could remind the users that they should consider the returned Card
slice data as read-only.
In that case, Header.Cards() []Card
should return all the cards (including SIMPLE
, COMMENT
, HISTORY
, END
) and preserve their order as found in the file.
I would suggest to keep Header.Get(key)
which is convenient and modify Header.Comments() []string
(note the plural) to return several values, instead of just one value as they currently does. I don't know for sure if a well formed FITS file is supposed to have several HISTORY
cards: if that's the case, Header.History()
could also become Header.Comments() []string
.
from fitsio.
apologies for the belated answer.
do you want to give this a go and send a PR?
from fitsio.
Related Issues (20)
- view-fits: support for pan
- view-fits: overlaying multiple images
- support for WCS and geo-tiles
- fitsio: reflection heavy r/w code HOT 1
- A problem in file "fitsio/decode.go" HOT 4
- fitsio: add examples for various image types HOT 3
- Is it possible to read only the Header Unit and not the Data Unit? HOT 10
- Reusing the I/O buffer when decoding a header unit would be beneficial HOT 2
- Improve documentation of fitsio.Close HOT 3
- Converting FITS to TIFF blows out HOT 8
- Decode: check that the number of bytes read matches the number of bytes requested HOT 6
- Panic on Duplicate Keys HOT 4
- fitsio: card value as float64
- Creating an empty fits file HOT 3
- fitsio: support for RICE (de)compression algorithm
- cmd/view-fits: consider using Gioui instead of x/exp/shiny
- fitsio: Expected behaviour with precision on floating point number HOT 2
- fitsio: Precision lost when writing small float64 value in the header HOT 1
- fitsio: use errors.Unwrap protocol and '%w' verb
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fitsio.