Esempio n. 1
0
// ---------------------------------------------------------------------------
//
// ---------------------------------------------------------------------------
//
TBool WlanOsa::Initialize( 
    TBool aUseCachedMemory, 
    TInt aAllocationUnit,
    void* aDfcQueue )
    {
    TraceDump(INFO_LEVEL, ("[WLAN] WlanOsa::Initialize()"));

    TBool status( ETrue );
    
    iDfcQueue = aDfcQueue;

    if ( iPimpl )
        {
        status = Pimpl().Initialize( aUseCachedMemory, aAllocationUnit );
        }
    else
        {
        status = EFalse;
        }

    TraceDump(INFO_LEVEL, (("[WLAN] WlanOsa::Initialize(): status (bool): %d"),
        status));

    return status;
    }
Esempio n. 2
0
// ---------------------------------------------------------------------------
// From class MWlanOsa.
//
// ---------------------------------------------------------------------------
//
void WlanOsa::Free( void* aPtr )
    {
#ifdef __WLAN_ENABLE_DMA

    Pimpl().iMemoryPool->Free( aPtr );

#else

    GpFree( aPtr );

#endif // __WLAN_ENABLE_DMA
    }
Esempio n. 3
0
// ---------------------------------------------------------------------------
// From class MWlanOsaExt.
// ---------------------------------------------------------------------------
//
void WlanOsa::MutexRelease()
    {
    TraceDump(MUTEX_LEVEL, ("[WLAN] WlanOsa::MutexRelease() +"));
    TraceDump(MUTEX_LEVEL, (("[WLAN] current thread id: %d"),
        (Kern::CurrentThread()).iId));

    // release mutex
    Kern::MutexSignal( *(Pimpl().iMutex) );

    TraceDump(MUTEX_LEVEL, ("[WLAN] WlanOsa::MutexRelease() -"));
    TraceDump(MUTEX_LEVEL, (("[WLAN] current thread id: %d"),
        (Kern::CurrentThread()).iId));
    }
Esempio n. 4
0
// ---------------------------------------------------------------------------
// From class MWlanOsaExt.
// ---------------------------------------------------------------------------
//
void WlanOsa::MutexAcquire()
    {
    TraceDump(MUTEX_LEVEL, ("[WLAN] WlanOsa::MutexAcquire() +"));
    TraceDump(MUTEX_LEVEL, (("[WLAN] current thread id: %d"),
        (Kern::CurrentThread()).iId));

    // acquire mutex
    Kern::MutexWait( *(Pimpl().iMutex) );

    TraceDump(MUTEX_LEVEL, ("[WLAN] WlanOsa::MutexAcquire() -"));
    TraceDump(MUTEX_LEVEL, (("[WLAN] current thread id: %d"),
        (Kern::CurrentThread()).iId));
    }
Esempio n. 5
0
// ---------------------------------------------------------------------------
// From class MWlanOsa.
//
// ---------------------------------------------------------------------------
//
void* WlanOsa::Alloc( TOsaMemoryType aOsaMemoryType, TInt aSize, TUint aFlags )
    {
#ifdef __WLAN_ENABLE_DMA

    return Pimpl().iMemoryPool->Alloc(
        aOsaMemoryType,
        aSize,
        (aFlags & KAllocZeroStampMask) );

#else

    return GpAlloc( aSize, (aFlags & KAllocZeroStampMask) );

#endif // __WLAN_ENABLE_DMA
    }
Esempio n. 6
0
// ---------------------------------------------------------------------------
//
// ---------------------------------------------------------------------------
//
WlanOsa::~WlanOsa()
    {
    TraceDump(INFO_LEVEL, ("[WLAN] WlanOsa dtor"));

    iDfcQueue = NULL;
    
    if ( IsValid() )
        {
        // we are valid -> proceed
        // close the mutex
        TraceDump(MUTEX_LEVEL, ("[WLAN] WlanOsa close mutex"));

        if ( Pimpl().iMutex )
            {
            Pimpl().iMutex->Close( NULL );
            }

        if ( iPimpl )
            {
            delete iPimpl;
            iPimpl = NULL;
            }
        }
    }
Esempio n. 7
0
// ---------------------------------------------------------------------------
//
// ---------------------------------------------------------------------------
//
WlanOsa::WlanOsa() : iPimpl( NULL ), iDfcQueue( NULL )
    {
    TraceDump(INFO_LEVEL, ("[WLAN] WlanOsa ctor"));

    iPimpl = new WlanOsaImpl();
    if ( iPimpl )
        {
        if ( iPimpl->IsValid() )
            {
            // allocation success & object valid -> proceed

            Validate();

            const TUint mutex_order( KMutexOrdGeneral7 );
            TraceDump(MUTEX_LEVEL,
                (("[WLAN] WlanOsa mutex create: order: %d"), mutex_order));

            const TInt ret( Kern::MutexCreate(
                Pimpl().iMutex, KNullDesC, mutex_order) );

            if ( ret != KErrNone )
                {
                delete iPimpl;
                // and invalidate
                InValidate();
                }
            }
        else
            {
            // osa impl is invalid. Deallocate it
            delete iPimpl;
            // we are invalid, too
            InValidate();
            }
        }
    else
        {
        // allocation failed invalidate object
        InValidate();
        }
    }
Esempio n. 8
0
 wstring const &BaseTypeGenerator<ApiHolder>::GetFullName() const
 {
     return Pimpl()->GetFullName();
 }
Esempio n. 9
0
 void BaseTypeGenerator<ApiHolder>::Initialize(assembly_generator_label_type *pAsmGen)
 {
     Pimpl()->Initialize(pAsmGen);
 }
Esempio n. 10
0
 void BaseTypeGenerator<ApiHolder>::Accept(IMetadataVisitor *pVisitor) const
 {
     Pimpl()->Accept(pVisitor);
 }
Esempio n. 11
0
 void BaseTypeGenerator<ApiHolder>::SetMember(TypeProvider const &member)
 {
     Pimpl()->SetMember(member);
 }
Esempio n. 12
0
 void BaseTypeGenerator<ApiHolder>::SetGenericParameterAttributes(GenericParamAttributes const &gpAttr)
 {
     Pimpl()->SetGenericParameterAttributes(gpAttr);
 }
Esempio n. 13
0
 void BaseTypeGenerator<ApiHolder>::SetDimensions(vector<ArrayDimension> const &arrDims)
 {
     Pimpl()->SetDimensions(arrDims);
 }
Esempio n. 14
0
 typename BaseTypeGenerator<ApiHolder>::method_generator_label_type *BaseTypeGenerator<ApiHolder>::DefineConstructor(MethodAttributes const &attr, CallingConventions const &callingConvention, vector<IType const *> const &paramTypes)
 {
     return Pimpl()->DefineConstructor(attr, callingConvention, paramTypes);
 }
Esempio n. 15
0
 typename BaseTypeGenerator<ApiHolder>::method_generator_label_type *BaseTypeGenerator<ApiHolder>::DefineMethod(wstring const &name, MethodAttributes const &attr, CallingConventions const &callingConvention, IType const *pRetType, vector<IType const *> const &paramTypes)
 {
     return Pimpl()->DefineMethod(name, attr, callingConvention, pRetType, paramTypes);
 }
Esempio n. 16
0
 void BaseTypeGenerator<ApiHolder>::SetBaseType(IType const *pBaseType)
 {
     Pimpl()->SetBaseType(pBaseType);
 }
Esempio n. 17
0
 void BaseTypeGenerator<ApiHolder>::SetKind(TypeKinds const &kind)
 {
     Pimpl()->SetKind(kind);
 }
Esempio n. 18
0
 typename BaseTypeGenerator<ApiHolder>::method_generator_label_type *BaseTypeGenerator<ApiHolder>::DefineDefaultConstructor(MethodAttributes const &attr)
 {
     return Pimpl()->DefineDefaultConstructor(attr);
 }
Esempio n. 19
0
 void BaseTypeGenerator<ApiHolder>::SetGenericArguments(vector<IType const *> const &genericArgs)
 {
     Pimpl()->SetGenericArguments(genericArgs);
 }
Esempio n. 20
0
 typename BaseTypeGenerator<ApiHolder>::property_generator_label_type *BaseTypeGenerator<ApiHolder>::DefineProperty(wstring const &name, PropertyAttributes const &attr, IType const *pPropType, vector<IType const *> const &paramTypes)
 {
     return Pimpl()->DefineProperty(name, attr, pPropType, paramTypes);
 }
Esempio n. 21
0
 void BaseTypeGenerator<ApiHolder>::SetGenericParameterPosition(ULONG genericParamPos)
 {
     Pimpl()->SetGenericParameterPosition(genericParamPos);
 }
Esempio n. 22
0
 void BaseTypeGenerator<ApiHolder>::DefineGenericParameters(vector<wstring> const &names)
 {
     Pimpl()->DefineGenericParameters(names);
 }
Esempio n. 23
0
 void BaseTypeGenerator<ApiHolder>::SetSourceType(IType const *pSrcType)
 {
     Pimpl()->SetSourceType(pSrcType);
 }
Esempio n. 24
0
 void BaseTypeGenerator<ApiHolder>::DefineGenericParameters(vector<wstring> const &names, vector<type_generator_label_type *> &genericArgGens)
 {
     Pimpl()->DefineGenericParameters(names, genericArgGens);
 }
Esempio n. 25
0
 BaseTypeGenerator<ApiHolder>::~BaseTypeGenerator()
 {
     Pimpl()->~type_generator_pimpl_label_type();
 }
Esempio n. 26
0
 IType const *BaseTypeGenerator<ApiHolder>::CreateType() const
 {
     return Pimpl()->CreateType();
 }
Esempio n. 27
0
 mdToken BaseTypeGenerator<ApiHolder>::GetToken() const
 {
     return Pimpl()->GetToken();
 }
Esempio n. 28
0
 void BaseTypeGenerator<ApiHolder>::SetFullName(wstring const &fullName)
 {
     Pimpl()->SetFullName(fullName);
 }
Esempio n. 29
0
 bool BaseTypeGenerator<ApiHolder>::IsPublic() const
 {
     return Pimpl()->IsPublic();
 }
Esempio n. 30
0
 void BaseTypeGenerator<ApiHolder>::SetAttributes(TypeAttributes const &attr)
 {
     Pimpl()->SetAttributes(attr);
 }