Thank you Graeme! I will try this one, looks very promising. I was just 
thinking something similar, i.e. that CB does some compile-time trickery 
and translates the THIS:function(...) to something like function(..., <all 
THIS attributes>).
Thank you!


Il giorno martedì 14 luglio 2015 05:04:23 UTC+2, graeme defty ha scritto:
>
>
> It's a while since I got tangled in this stuff, but is it possible that it 
> is related to the fact that models are passed to their methods as the first 
> (hidden) parameter?
>
> Try removing the "THIS:" and I think you may find that it works.
>
> NewFilename = apply_gamma_factor(OriginalFilename, GammaValue),
>
>
>
> If you really want the "THIS:" where you have it to explicitly provide the 
> module for the call , try passing it also as the first parameter to the 
> call.
>
> NewFilename = THIS:apply_gamma_factor(THIS, OriginalFilename, GammaValue),
>
>
> g
>
>
>
>
>
>
>
> On 13 July 2015 at 17:07, emacstheviking <[email protected] <javascript:>> 
> wrote:
>
>> First glance.... apply_gamma_factor/2 .... at a brief look the failing 
>> call seems to be supplying more than two arguments... check your code and 
>> make sure you are calling it how it expects to be called perhaps!?
>>
>> Sean.
>>
>>
>>
>> On 9 July 2015 at 12:17, <[email protected] <javascript:>> wrote:
>>
>>> Hi all, 
>>> I am quite new to ChicagoBoss and I am struggling to just add a simple 
>>> function to an existing model module. 
>>> My module is image.erl. 
>>>
>>> I have a function called create_processed_file():
>>>
>>> create_processed_file(FileType, Size)  ->
>>>
>>>
>>> lager:info("-=> Stepping into create_processed_file <=-"),
>>> OriginalFilename = THIS:get_filename(FileType, Size), 
>>> GammaValue = THIS:gamma(),
>>> NewFilename = THIS:apply_gamma_factor(OriginalFilename, GammaValue),
>>> NewFilename.
>>>
>>>
>>> I added THIS:apply_gamma_factor/2. 
>>>
>>> The function is defined at the end of the file: 
>>>
>>> apply_gamma_factor(Filename, Gamma) ->
>>> lager:info("-=> GAMMA PROCESSING : ~p", [Gamma]),
>>> ProcessedFilenamePart = "_gamma_" ++ io_lib:format("~4.2f", [Gamma]),
>>> NewFilename = "/tmp/" ++ filename:rootname(filename:basename(Filename)) ++ 
>>> ProcessedFilenamePart ++ filename:extension(Filename),
>>> case (Gamma == 1.0) of
>>>     true ->
>>>         % if gamma == 1.0 let's just copy the original image with the new 
>>> file name.
>>>         lager:info("[apply_gamma_factor] - gamma = 1 - copying ~s to ~s . 
>>> ", [Filename, NewFilename]),
>>>         {ok, _} = file:copy(Filename, NewFilename);
>>>     false ->
>>>         % if gamma /= 1.0 then we need to create the processed image.
>>>         case filelib:is_regular(NewFilename) of
>>>             false -> %% send to graphicsmagick for processing
>>>                 GammaCmd = io_lib:format("gm convert -gamma ~f ~s ~s ",
>>>                     [Gamma,
>>>                         Filename,
>>>                         NewFilename]),
>>>                 os:cmd(GammaCmd);
>>>             true ->
>>>                 undefined
>>>         end
>>> end,
>>> NewFilename.
>>>
>>>
>>>
>>> I cleaned, built and restarted my CB application and every time I get 
>>> the same error: 
>>>
>>>
>>>
>>> *13:08:34.929 [info] -=> Stepping into create_processed_file 
>>> <=-13:08:34.946 [error] gen_server gsd_report_server terminated with 
>>> reason: no function clause matching 
>>> image:apply_gamma_factor("./data/exams/5/c/6/5/a3a9-7762-450e-9dca-f738934cd773/image-5c65a3a9-7762-450e-9dca-f738934cd77...",
>>>  
>>> 2.0, 
>>> {image,"image-5c65a3a9-7762-450e-9dca-f738934cd773",<<"visible">>,undefined,{{2015,3,26},{14,5,52.0}},...})
>>>  
>>> line 19613:08:34.947 [error] CRASH REPORT Process gsd_report_server with 0 
>>> neighbours exited with reason: no function clause matching 
>>> image:apply_gamma_factor("./data/exams/5/c/6/5/a3a9-7762-450e-9dca-f738934cd773/image-5c65a3a9-7762-450e-9dca-f738934cd77...",
>>>  
>>> 2.0, 
>>> {image,"image-5c65a3a9-7762-450e-9dca-f738934cd773",<<"visible">>,undefined,{{2015,3,26},{14,5,52.0}},...})
>>>  
>>> line 196 in gen_server:terminate/7 line 804*
>>> So it enters the create_processed_file function but somehow cannot 'see' 
>>> the apply_gamma_factor/2 fuc, instead it looks for a function with more 
>>> parameters. 
>>> Could you please help me in solving this problem?
>>> Thanks in advance
>>>
>>>  -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "ChicagoBoss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] <javascript:>.
>>> Visit this group at http://groups.google.com/group/chicagoboss.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/chicagoboss/6d8cb159-f10d-4c1e-a379-147a40e8b210%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/chicagoboss/6d8cb159-f10d-4c1e-a379-147a40e8b210%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "ChicagoBoss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> Visit this group at http://groups.google.com/group/chicagoboss.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/chicagoboss/CAEiEuU%2BuCaY_oandHCnbiq8d4w%3DvLanGV-VCX%3DqXKPUuK6q%3Dvw%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/chicagoboss/CAEiEuU%2BuCaY_oandHCnbiq8d4w%3DvLanGV-VCX%3DqXKPUuK6q%3Dvw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"ChicagoBoss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
Visit this group at http://groups.google.com/group/chicagoboss.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/chicagoboss/72a3e755-a65d-4493-8a15-6de4b01dacd8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to