У вас не стоит Flash Player
Настройки
#60759 - Tue Feb 18 2014 06:01 PM Появление входов
finstrateg Offline
member

Registered: Sat Oct 19 2013
Записи: 174
Подскажите где почитать/посмотреть как закодить кубик, чтобы входы в кубик появлялись дополнительные, какие интерфейсы надо использовать и т.п. - как в кубике суммирования (два числа подаешь - появляется еще вход)

Наверх
#60760 - Tue Feb 18 2014 06:38 PM Re: Появление входов [Re: finstrateg]
ra81 Offline
Carpal Tunnel

Registered: Thu Sep 27 2012
Записи: 2860
_________________________
__


Наверх
#60764 - Tue Feb 18 2014 10:57 PM Re: Появление входов [Re: ra81]
finstrateg Offline
member

Registered: Sat Oct 19 2013
Записи: 174
Спасибо!

Посмотрел код, оставил только то, что более менее понятно, потратил часа 3 mad, получился такой маленький код:

Code:
// Сумма элементов
    [HandlerCategory("FinStrateg")]
    [HandlerName("PackSignal")]
    [InputsCount(2, 9)]
    public class PackSignal : ITwoSourcesHandler, IDoubleInputs, IDoubleReturns, IValuesHandlerWithNumber
    {
            public double Execute(double data, params double[] dataArr)
            {
                int n = dataArr.Length - 1; // Количество элементов в массиве, последний элемент массива - это номер бара для которого все вызвано, поэтому его отнимаем
                double sum = data;
                for (int i = 0; i < n; i++) sum = sum + dataArr[i];
                return sum;
            }
    }


Вроде работает правильно!

Есть несколько вопросов, если не затруднит ответить: все ли правильно написано (вдруг что важное стер), какой из указанных интерфейсов отвечает за размножение входов (ему как я понял требуется параметр [InputsCount(2, 9)] и массив с параметрами), будет ли работать с одним входом (если оставить один массив в параметрах и чтобы вход в кубик изначально был один)?


Отредактировано finstrateg (Tue Feb 18 2014 11:20 PM)

Наверх
#60780 - Thu Feb 20 2014 08:50 AM Re: Появление входов [Re: finstrateg]
ra81 Offline
Carpal Tunnel

Registered: Thu Sep 27 2012
Записи: 2860
Я бы предложил потратить еще 3 часа и разобраться самому. Это был бы левел ап однозначно.

[InputsCount(2, 9)] - отвечает за размножение.
ITwoSourcesHandler - значит входов не менее чем 2.

Важного в кубиках немного. Только аттрибуты (то что в []) и описание интерфейсов (то что начинается с I)

Не забывайте еще что есть Потоковые и Последовательные индикаторы. У вас Последовательный.
_________________________
__


Наверх
#60807 - Thu Feb 20 2014 07:09 PM Re: Появление входов [Re: ra81]
finstrateg Offline
member

Registered: Sat Oct 19 2013
Записи: 174
Спасибо!

По поводу потоковых или последовательных, я большого смысла в потоковых не увидел, так как к потоковым не конектятся последовательные кубики, а чтобы конектились, надо перегрузку писать для метода Execute - как я понял глядя в предложенный кубик, а зачем это делать если к последовательным все конектится, возможно потоковые побыстрей работают (хотя может и медленнее), но и с последовательными все быстро.

Сделать, чтобы размножение входов начиналось с одного входа - не получилось, указал [InputsCount(1, 9)] и IOneSourceHandler, в параметрах один массив оставил, так один вход появляется, но размножаться отказывается...

Ограничение есть до скольких штук можно размножать входы?

Наверх
#60809 - Thu Feb 20 2014 08:38 PM Re: Появление входов [Re: finstrateg]
ra81 Offline
Carpal Tunnel

Registered: Thu Sep 27 2012
Записи: 2860
Originally Posted By: finstrateg
Спасибо!

По поводу потоковых или последовательных, я большого смысла в потоковых не увидел, так как к потоковым не конектятся последовательные кубики, а чтобы конектились, надо перегрузку писать для метода Execute - как я понял глядя в предложенный кубик, а зачем это делать если к последовательным все конектится, возможно потоковые побыстрей работают (хотя может и медленнее), но и с последовательными все быстро.

Сделать, чтобы размножение входов начиналось с одного входа - не получилось, указал [InputsCount(1, 9)] и IOneSourceHandler, в параметрах один массив оставил, так один вход появляется, но размножаться отказывается...

Ограничение есть до скольких штук можно размножать входы?

Насчет ограничения не знаю. Возможно есть. Но потоковые вы зря :)). Благодаря только им ваши скрипты не считаются месяцами на оптимизации. А считаются быстро. Если оптимайз не пользуете то реально все равно.
_________________________
__


Наверх


Moderator:  ViL, sar