// DescribeLiveStreamRecordIndexFile 查询单个录制索引文件
//
// https://help.aliyun.com/document_detail/35237.html?spm=5176.doc35236.6.230.XnsJuD
1445
func (l *Live) DescribeLiveStreamRecordIndexFile(streamName, recordID string, resp interface{}) (err error) {
	req := l.cloneRequest(DescribeLiveStreamRecordIndexFileAction)
	if global.EmptyString == req.AppName || global.EmptyString == streamName {
		return errors.New(" appName|streamName should not to be empty")
	}
	req.SetArgs("StreamName", streamName)
	if recordID != global.EmptyString {
		req.SetArgs("RecordId", recordID)
	}
	err = l.rpc.Query(req, resp)
	return
}
677331
func NewDefaultRocRForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *RocR, err error) {
	ind, err := NewDefaultRocRWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
1206420
func NewDefaultHhvForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *Hhv, err error) {
	ind, err := NewDefaultHhvWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
90149
func NewDefaultLinRegSlpForStream(priceStream gotrade.DOHLCVStreamSubscriber) (indicator *LinRegSlp, err error) {
	ind, err := NewDefaultLinRegSlp()
	priceStream.AddTickSubscription(ind)
	return ind, err
}
707074
func (kinesis *Kinesis) DescribeDeliveryStream(args *RequestArgs) (resp *DescribeDeliveryStreamResp, err error) {
	kinesis.Firehose()
	params := makeParams("DescribeDeliveryStream")
	resp = &DescribeDeliveryStreamResp{}
	err = kinesis.query(params, args.params, resp)
	if err != nil {
		return nil, err
	}
	return
}
1360465
func NewTrimaForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber, timePeriod int, selectData gotrade.DOHLCVDataSelectionFunc) (indicator *Trima, err error) {
	ind, err := NewTrimaWithSrcLen(sourceLength, timePeriod, selectData)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
853952
func NewDxForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber, timePeriod int) (indicator *Dx, err error) {
	ind, err := NewDxWithSrcLen(sourceLength, timePeriod)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
1294992
func NewDefaultDemaForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *Dema, err error) {
	ind, err := NewDefaultDemaWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
632297
func NewLinRegAngForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber, timePeriod int, selectData gotrade.DOHLCVDataSelectionFunc) (indicator *LinRegAng, err error) {
	ind, err := NewLinRegAngWithSrcLen(sourceLength, timePeriod, selectData)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
826739
func NewLinRegForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber, timePeriod int, selectData gotrade.DOHLCVDataSelectionFunc) (indicator *LinReg, err error) {
	ind, err := NewLinRegWithSrcLen(sourceLength, timePeriod, selectData)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
1320169
func NewDefaultLinRegSlpForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *LinRegSlp, err error) {
	ind, err := NewDefaultLinRegSlpWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
673437
func (s *Stream) RecordIndexFile(recordId string) (info RecordIndexInfo, err error) {
	resp := &RecordIndexInfoResponse{}
	err = s.live.DescribeLiveStreamRecordIndexFile(s.StreamName, recordId, resp)
	if err == nil {
		info = resp.RecordIndexInfo
	}
	return
}
1164446
func NewDefaultDxForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *Dx, err error) {
	ind, err := NewDefaultDxWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
878354
func (d *ImageStreamTagDescriber) Describe(namespace, name string, settings describe.DescriberSettings) (string, error) {
	c := d.c.ImageStreamTags(namespace)
	repo, tag, err := imageapi.ParseImageStreamTagName(name)
	if err != nil {
		return "", err
	}
	if len(tag) == 0 {
		// TODO use repo's preferred default, when that's coded
		tag = imageapi.DefaultImageTag
	}
	imageStreamTag, err := c.Get(repo+":"+tag, metav1.GetOptions{})
	if err != nil {
		return "", err
	}

	return DescribeImage(&imageStreamTag.Image, imageStreamTag.Image.Name)
}
343862
func NewDefaultStdDevForStream(priceStream gotrade.DOHLCVStreamSubscriber) (indicator *StdDev, err error) {
	ind, err := NewDefaultStdDev()
	priceStream.AddTickSubscription(ind)
	return ind, err
}
480681
func NewDefaultLlvForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *Llv, err error) {
	ind, err := NewDefaultLlvWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}
12697
func NewDefaultRocPForStreamWithSrcLen(sourceLength uint, priceStream gotrade.DOHLCVStreamSubscriber) (indicator *RocP, err error) {
	ind, err := NewDefaultRocPWithSrcLen(sourceLength)
	priceStream.AddTickSubscription(ind)
	return ind, err
}