My plugin compiles ok under gcc4 on Tiger, but when I run it via RB R4, I
get assert errors:  pluginEntrytable.GetEntry(...)
Failure message: cant find plugin method [ PLUGINCLASS.METHODNAME(...) ]

It seems to recognise all my plugin method name and declaration strings but
for each plugin method puts out the above assert.

Can anyone tell me what are the typical causes of this assert ?. I cannot
even get Xcode to breakpoint on pluginEntry or in pluginMain() , yet the
debug app launches and obviously gets far enough to read the
REALmethodDefinition table!


Here is the class/plugin definition stuff:  ( all the functions in question
are defined above this as static functions )

//**********   CSolo Methods Structure Definition
***************************
REALmethodDefinition  Solo_RBMethods[] = {
  {(REALproc) Solo_Destructor,
REALnoImplementation,"Destructor()",REALconsoleSafe },
  {(REALproc) Solo_Reset, REALnoImplementation, "Reset() As
Integer",REALconsoleSafe },
  {(REALproc) Solo_FlushSolo, REALnoImplementation, "FlushSolo(iIdx2FlushTo
As Integer) As Integer",REALconsoleSafe },
  {(REALproc) Solo_GenerateInitialBuffers, REALnoImplementation,
"GenerateInitialBuffers(iInitialSize As Integer) As
Integer",REALconsoleSafe},
  {(REALproc) Solo_GetSoloBuffer, REALnoImplementation, "GetSoloBuffer(ByRef
psSoloBuffer As Ptr ) As Integer",REALconsoleSafe },
  {(REALproc) Solo_GetNumOfMarks, REALnoImplementation, "GetNumOfMarks() As
Integer",REALconsoleSafe },
  {(REALproc) Solo_PutBuffers, REALnoImplementation, "PutBuffers(ByRef
psSoloBuffer As Ptr, iSize As Integer ) As Integer",REALconsoleSafe },
  {(REALproc) Solo_AddSolo, REALnoImplementation, "AddSolo(iNewMark As
Integer, fTonality As Single, fCycleEnergy As Single, fNewTransientVal As
Single, fOnset As Single ) As Integer",REALconsoleSafe },
  {(REALproc) Solo_AddSolo1, REALnoImplementation, "AddSolo(iNewMark As
Integer, fTonality As Single, fCycleEnergy As Single, fNewTransientVal As
Single, fOnset As Single, fPitch As Single ) As Integer",REALconsoleSafe },
  {(REALproc) Solo_RemoveLastMark, REALnoImplementation, "RemoveLastMark( )
As Integer",REALconsoleSafe },
  {(REALproc) Solo_GetLastSolo, REALnoImplementation, "GetLastSolo( ) As
Integer",REALconsoleSafe },
  {(REALproc) Solo_GetSolo, REALnoImplementation, "GetSolo(iIdx As Integer )
As Integer",REALconsoleSafe },
  {(REALproc) Solo_GetPitch, REALnoImplementation, "GetPitch(iIdx As Integer
) As Integer",REALconsoleSafe },
  {(REALproc) Solo_GetEstPitch, REALnoImplementation, "GetEstPitch(iIdx As
Integer ) As Integer",REALconsoleSafe },
  {(REALproc) Solo_GetTransientVal, REALnoImplementation,
"GetTransientVal(iIdx As Integer ) As Single",REALconsoleSafe },
  {(REALproc) Solo_GetEnergy, REALnoImplementation, "GetEnergy(iIdx As
Integer ) As Single",REALconsoleSafe },
  {(REALproc) Solo_GetTonality, REALnoImplementation, "GetTonality(iIdx As
Integer ) As Single",REALconsoleSafe },
  {(REALproc) Solo_GetOnset, REALnoImplementation, "GetOnset(iIdx As Integer
) As Single",REALconsoleSafe },
  {(REALproc) Solo_GetClosestSoloIdx, REALnoImplementation,
"GetClosestSoloIdx(iStartIdx As Integer, iTimeStamp As Integer ) As
Integer",REALconsoleSafe },
  {(REALproc) Solo_GetNextDist, REALnoImplementation, "GetNextDist(ByRef
iStartIdx As Integer, iOffs As Integer ) As Integer",REALconsoleSafe },
};

//**********   CSolo::CreateInstance()     ***************************
static int  Solo_CreateInstance( void* unused,REALobject&  pCSolo)
{
    pCSolo = REALnewInstance( CSoloRBRef );
    
    ClassData(Solo, pCSolo, Solo_Data, data );
    
    CSoloIf* pSolo;
    int err = CSolo::CreateInstance( pSolo );
    data->iClass = ( CSolo*) pSolo;
    
    
}
//**********   CSolo::DestroyInstance()     ***************************
static int  Solo_DestroyInstance( void* unused,CSolo pCSolo)
{
}
//**********   CSolo  Shared Methods Structure Definition
***************************
REALmethodDefinition  Solo_RBSharedMethods[] = {
  {(REALproc) Solo_CreateInstance, REALnoImplementation,
"CreateInstance(ByRef pCSolo As CSolo ) As Integer" ,REALconsoleSafe },
  {(REALproc) Solo_DestroyInstance, REALnoImplementation,
"DestroyInstance(pCSolo As CSolo ) As Integer",REALconsoleSafe },
};

//**********   CSolo   REALclass Definition   ***************************
REALclassDefinition Solo =  {
   kCurrentREALControlVersion,
   "CSolo",
   nil,     // superclass
   sizeof( struct Solo_Data), // data struct size
   0,    // reserved
   (REALproc) Solo_Initializer,  //initializer
   (REALproc) Solo_Finalizer,    //deinitializer
   NULL,                     // property list
   0,                     // property count
    Solo_RBMethods,
   sizeof( Solo_RBMethods) / sizeof(REALmethodDefinition),  // method count
   NULL,            // events
   0,                 // event count (how many events)
   NULL,                // event instances
   0,                    // event instance count
   NULL,        // interfaces
   NULL,        // obsolete1
   NULL,        // obsolete2
   NULL,        // Constants
   0,             // Constantcount
   REALconsoleSafe,             // mFlags
   NULL,       // sharedProperties
   0,             // sharedPropertyCount
    Solo_RBSharedMethods,                     // shared method struct
   sizeof( Solo_RBSharedMethods) / sizeof(REALmethodDefinition),
// property count
};


_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to