当前位置: 首页>>代码示例>>Golang>>正文


Golang Nc.Roscop方法代码示例

本文整理汇总了Golang中github.com/SNguyen29/Oceano2oceansitesTest/lib.Nc.Roscop方法的典型用法代码示例。如果您正苦于以下问题:Golang Nc.Roscop方法的具体用法?Golang Nc.Roscop怎么用?Golang Nc.Roscop使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在github.com/SNguyen29/Oceano2oceansitesTest/lib.Nc的用法示例。


在下文中一共展示了Nc.Roscop方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: GetConfigXBT

func GetConfigXBT(nc *lib.Nc, m *Map, cfg toml.Configtoml, configFile string, Type string, optAll *bool) {
	//	var split, header, format string
	var split []string

	// define map from netcdf structure
	nc.Dimensions = make(map[string]int)
	nc.Attributes = make(map[string]string)
	nc.Extras_f = make(map[string]float64)
	nc.Extras_s = make(map[string]string)
	nc.Variables_1D = make(map[string]interface{})

	// initialize map entry from nil interface to empty slice of float64
	nc.Variables_1D["PROFILE"] = []float64{}
	nc.Variables_1D["TIME"] = []float64{}
	nc.Variables_1D["LATITUDE"] = []float64{}
	nc.Variables_1D["LONGITUDE"] = []float64{}
	nc.Variables_1D["TYPECAST"] = []float64{}
	nc.Roscop = roscop.NewRoscop(cfg.Roscopfile)

	// add some global attributes for profile, change in future
	nc.Attributes["data_type"] = Type

	split = cfg.Xbt.Split

	//		stationPrefixLength = cfg.Ctd.StationPrefixLength
	// TODOS: complete
	nc.Attributes["cycle_mesure"] = cfg.Cruise.CycleMesure
	nc.Attributes["plateforme"] = cfg.Cruise.Plateforme
	nc.Attributes["institute"] = cfg.Cruise.Institute
	nc.Attributes["pi"] = cfg.Cruise.Pi
	nc.Attributes["timezone"] = cfg.Cruise.Timezone
	nc.Attributes["begin_date"] = cfg.Cruise.BeginDate
	nc.Attributes["end_date"] = cfg.Cruise.EndDate
	nc.Attributes["creator"] = cfg.Cruise.Creator
	nc.Attributes["type_instrument"] = cfg.Xbt.TypeInstrument
	nc.Attributes["instrument_number"] = cfg.Xbt.InstrumentNumber

	// add specific column(s) to the first header line in ascii file

	// First column should be PRFL
	m.Hdr = append(m.Hdr, "PRFL")

	// fill map_var from split (read in .ini configuration file)
	// store the position (column) of each physical parameter
	var fields []string

	fields = split

	fmt.Fprintln(lib.Debug, "getConfig: ", fields)

	// construct header slice from split
	for i := 0; i < len(fields); i += 2 {
		if v, err := strconv.Atoi(fields[i+1]); err == nil {
			m.Map_var[fields[i]] = v - 1
			m.Hdr = append(m.Hdr, fields[i])
		}
	}
	fmt.Fprintln(lib.Debug, "getConfig: ", m.Hdr)

	// fill map_format from code_roscop
	for _, key := range m.Hdr {
		m.Map_format[key] = nc.Roscop.GetAttributesM(key, "format")
	}
}
开发者ID:SNguyen29,项目名称:Oceano2oceansitesTest,代码行数:64,代码来源:ConfigXBT.go


注:本文中的github.com/SNguyen29/Oceano2oceansitesTest/lib.Nc.Roscop方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。